{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT License.\n",
    "\n",
    "# Capture The Flag Toy Example - Solved manually"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This notebook demonstrates how to model a toy `Capture The Flag` security game as a CyberBattle environment."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "output_type": "display_data",
     "data": {
      "text/html": "        <script type=\"text/javascript\">\n        window.PlotlyConfig = {MathJaxConfig: 'local'};\n        if (window.MathJax) {MathJax.Hub.Config({SVG: {font: \"STIX-Web\"}});}\n        if (typeof require !== 'undefined') {\n        require.undef(\"plotly\");\n        requirejs.config({\n            paths: {\n                'plotly': ['https://cdn.plot.ly/plotly-latest.min']\n            }\n        });\n        require(['plotly'], function(Plotly) {\n            window._Plotly = Plotly;\n        });\n        }\n        </script>\n        "
     },
     "metadata": {}
    }
   ],
   "source": [
    "import sys, logging\n",
    "import importlib\n",
    "import networkx as nx\n",
    "from datetime import datetime\n",
    "from tabulate import tabulate\n",
    "import cyberbattle.simulation.model as model\n",
    "import cyberbattle.simulation.actions as actions\n",
    "import cyberbattle.simulation.commandcontrol as commandcontrol\n",
    "import cyberbattle.samples.toyctf.toy_ctf as ctf\n",
    "importlib.reload(model)\n",
    "importlib.reload(actions)\n",
    "importlib.reload(commandcontrol)\n",
    "importlib.reload(ctf)\n",
    "logging.basicConfig(stream=sys.stdout, level=logging.INFO, format=\"%(levelname)s: %(message)s\")\n",
    "\n",
    "import plotly.offline as plo\n",
    "plo.init_notebook_mode(connected=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "output_type": "display_data",
     "data": {
      "text/plain": "<Figure size 432x288 with 1 Axes>",
      "image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<!-- Created with matplotlib (https://matplotlib.org/) -->\n<svg height=\"302.4pt\" version=\"1.1\" viewBox=\"0 0 446.4 302.4\" width=\"446.4pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <defs>\n  <style type=\"text/css\">\n*{stroke-linecap:butt;stroke-linejoin:round;}\n  </style>\n </defs>\n <g id=\"figure_1\">\n  <g id=\"patch_1\">\n   <path d=\"M 0 302.4 \nL 446.4 302.4 \nL 446.4 0 \nL 0 0 \nz\n\" style=\"fill:#ffffff;\"/>\n  </g>\n  <g id=\"axes_1\">\n   <g id=\"PathCollection_1\">\n    <defs>\n     <path d=\"M 0 8.660254 \nC 2.296726 8.660254 4.499694 7.747755 6.123724 6.123724 \nC 7.747755 4.499694 8.660254 2.296726 8.660254 0 \nC 8.660254 -2.296726 7.747755 -4.499694 6.123724 -6.123724 \nC 4.499694 -7.747755 2.296726 -8.660254 0 -8.660254 \nC -2.296726 -8.660254 -4.499694 -7.747755 -6.123724 -6.123724 \nC -7.747755 -4.499694 -8.660254 -2.296726 -8.660254 0 \nC -8.660254 2.296726 -7.747755 4.499694 -6.123724 6.123724 \nC -4.499694 7.747755 -2.296726 8.660254 0 8.660254 \nz\n\" id=\"C0_0_3d75f1f4e7\"/>\n    </defs>\n    <g clip-path=\"url(#pc12381c12f)\">\n     <use style=\"fill:#7f2704;stroke:#7f2704;\" x=\"86.090312\" xlink:href=\"#C0_0_3d75f1f4e7\" y=\"267.455463\"/>\n    </g>\n    <g clip-path=\"url(#pc12381c12f)\">\n     <use style=\"fill:#fd8c3b;stroke:#fd8c3b;\" x=\"253.01689\" xlink:href=\"#C0_0_3d75f1f4e7\" y=\"20.290909\"/>\n    </g>\n    <g clip-path=\"url(#pc12381c12f)\">\n     <use style=\"fill:#7f2704;stroke:#7f2704;\" x=\"419.563636\" xlink:href=\"#C0_0_3d75f1f4e7\" y=\"133.754429\"/>\n    </g>\n    <g clip-path=\"url(#pc12381c12f)\">\n     <use style=\"fill:#fee9d4;stroke:#fee9d4;\" x=\"26.836364\" xlink:href=\"#C0_0_3d75f1f4e7\" y=\"183.497037\"/>\n    </g>\n    <g clip-path=\"url(#pc12381c12f)\">\n     <use style=\"fill:#fd8c3b;stroke:#fd8c3b;\" x=\"412.743043\" xlink:href=\"#C0_0_3d75f1f4e7\" y=\"213.086701\"/>\n    </g>\n    <g clip-path=\"url(#pc12381c12f)\">\n     <use style=\"fill:#7f2704;stroke:#7f2704;\" x=\"39.378727\" xlink:href=\"#C0_0_3d75f1f4e7\" y=\"91.93764\"/>\n    </g>\n    <g clip-path=\"url(#pc12381c12f)\">\n     <use style=\"fill:#fd8c3b;stroke:#fd8c3b;\" x=\"380.02171\" xlink:href=\"#C0_0_3d75f1f4e7\" y=\"59.638257\"/>\n    </g>\n    <g clip-path=\"url(#pc12381c12f)\">\n     <use style=\"fill:#fd8c3b;stroke:#fd8c3b;\" x=\"208.7927\" xlink:href=\"#C0_0_3d75f1f4e7\" y=\"271.989263\"/>\n    </g>\n    <g clip-path=\"url(#pc12381c12f)\">\n     <use style=\"fill:#7f2704;stroke:#7f2704;\" x=\"336.759142\" xlink:href=\"#C0_0_3d75f1f4e7\" y=\"282.109091\"/>\n    </g>\n    <g clip-path=\"url(#pc12381c12f)\">\n     <use style=\"fill:#fff5eb;stroke:#fff5eb;\" x=\"139.952445\" xlink:href=\"#C0_0_3d75f1f4e7\" y=\"48.310909\"/>\n    </g>\n   </g>\n   <g id=\"text_1\">\n    <g clip-path=\"url(#pc12381c12f)\">\n     <!-- Website -->\n     <defs>\n      <path d=\"M 3.328125 72.90625 \nL 13.28125 72.90625 \nL 28.609375 11.28125 \nL 43.890625 72.90625 \nL 54.984375 72.90625 \nL 70.3125 11.28125 \nL 85.59375 72.90625 \nL 95.609375 72.90625 \nL 77.296875 0 \nL 64.890625 0 \nL 49.515625 63.28125 \nL 33.984375 0 \nL 21.578125 0 \nz\n\" id=\"DejaVuSans-87\"/>\n      <path d=\"M 56.203125 29.59375 \nL 56.203125 25.203125 \nL 14.890625 25.203125 \nQ 15.484375 15.921875 20.484375 11.0625 \nQ 25.484375 6.203125 34.421875 6.203125 \nQ 39.59375 6.203125 44.453125 7.46875 \nQ 49.3125 8.734375 54.109375 11.28125 \nL 54.109375 2.78125 \nQ 49.265625 0.734375 44.1875 -0.34375 \nQ 39.109375 -1.421875 33.890625 -1.421875 \nQ 20.796875 -1.421875 13.15625 6.1875 \nQ 5.515625 13.8125 5.515625 26.8125 \nQ 5.515625 40.234375 12.765625 48.109375 \nQ 20.015625 56 32.328125 56 \nQ 43.359375 56 49.78125 48.890625 \nQ 56.203125 41.796875 56.203125 29.59375 \nz\nM 47.21875 32.234375 \nQ 47.125 39.59375 43.09375 43.984375 \nQ 39.0625 48.390625 32.421875 48.390625 \nQ 24.90625 48.390625 20.390625 44.140625 \nQ 15.875 39.890625 15.1875 32.171875 \nz\n\" id=\"DejaVuSans-101\"/>\n      <path d=\"M 48.6875 27.296875 \nQ 48.6875 37.203125 44.609375 42.84375 \nQ 40.53125 48.484375 33.40625 48.484375 \nQ 26.265625 48.484375 22.1875 42.84375 \nQ 18.109375 37.203125 18.109375 27.296875 \nQ 18.109375 17.390625 22.1875 11.75 \nQ 26.265625 6.109375 33.40625 6.109375 \nQ 40.53125 6.109375 44.609375 11.75 \nQ 48.6875 17.390625 48.6875 27.296875 \nz\nM 18.109375 46.390625 \nQ 20.953125 51.265625 25.265625 53.625 \nQ 29.59375 56 35.59375 56 \nQ 45.5625 56 51.78125 48.09375 \nQ 58.015625 40.1875 58.015625 27.296875 \nQ 58.015625 14.40625 51.78125 6.484375 \nQ 45.5625 -1.421875 35.59375 -1.421875 \nQ 29.59375 -1.421875 25.265625 0.953125 \nQ 20.953125 3.328125 18.109375 8.203125 \nL 18.109375 0 \nL 9.078125 0 \nL 9.078125 75.984375 \nL 18.109375 75.984375 \nz\n\" id=\"DejaVuSans-98\"/>\n      <path d=\"M 44.28125 53.078125 \nL 44.28125 44.578125 \nQ 40.484375 46.53125 36.375 47.5 \nQ 32.28125 48.484375 27.875 48.484375 \nQ 21.1875 48.484375 17.84375 46.4375 \nQ 14.5 44.390625 14.5 40.28125 \nQ 14.5 37.15625 16.890625 35.375 \nQ 19.28125 33.59375 26.515625 31.984375 \nL 29.59375 31.296875 \nQ 39.15625 29.25 43.1875 25.515625 \nQ 47.21875 21.78125 47.21875 15.09375 \nQ 47.21875 7.46875 41.1875 3.015625 \nQ 35.15625 -1.421875 24.609375 -1.421875 \nQ 20.21875 -1.421875 15.453125 -0.5625 \nQ 10.6875 0.296875 5.421875 2 \nL 5.421875 11.28125 \nQ 10.40625 8.6875 15.234375 7.390625 \nQ 20.0625 6.109375 24.8125 6.109375 \nQ 31.15625 6.109375 34.5625 8.28125 \nQ 37.984375 10.453125 37.984375 14.40625 \nQ 37.984375 18.0625 35.515625 20.015625 \nQ 33.0625 21.96875 24.703125 23.78125 \nL 21.578125 24.515625 \nQ 13.234375 26.265625 9.515625 29.90625 \nQ 5.8125 33.546875 5.8125 39.890625 \nQ 5.8125 47.609375 11.28125 51.796875 \nQ 16.75 56 26.8125 56 \nQ 31.78125 56 36.171875 55.265625 \nQ 40.578125 54.546875 44.28125 53.078125 \nz\n\" id=\"DejaVuSans-115\"/>\n      <path d=\"M 9.421875 54.6875 \nL 18.40625 54.6875 \nL 18.40625 0 \nL 9.421875 0 \nz\nM 9.421875 75.984375 \nL 18.40625 75.984375 \nL 18.40625 64.59375 \nL 9.421875 64.59375 \nz\n\" id=\"DejaVuSans-105\"/>\n      <path d=\"M 18.3125 70.21875 \nL 18.3125 54.6875 \nL 36.8125 54.6875 \nL 36.8125 47.703125 \nL 18.3125 47.703125 \nL 18.3125 18.015625 \nQ 18.3125 11.328125 20.140625 9.421875 \nQ 21.96875 7.515625 27.59375 7.515625 \nL 36.8125 7.515625 \nL 36.8125 0 \nL 27.59375 0 \nQ 17.1875 0 13.234375 3.875 \nQ 9.28125 7.765625 9.28125 18.015625 \nL 9.28125 47.703125 \nL 2.6875 47.703125 \nL 2.6875 54.6875 \nL 9.28125 54.6875 \nL 9.28125 70.21875 \nz\n\" id=\"DejaVuSans-116\"/>\n     </defs>\n     <g transform=\"translate(62.172812 270.766713)scale(0.12 -0.12)\">\n      <use xlink:href=\"#DejaVuSans-87\"/>\n      <use x=\"93.001953\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"154.525391\" xlink:href=\"#DejaVuSans-98\"/>\n      <use x=\"218.001953\" xlink:href=\"#DejaVuSans-115\"/>\n      <use x=\"270.101562\" xlink:href=\"#DejaVuSans-105\"/>\n      <use x=\"297.884766\" xlink:href=\"#DejaVuSans-116\"/>\n      <use x=\"337.09375\" xlink:href=\"#DejaVuSans-101\"/>\n     </g>\n    </g>\n   </g>\n   <g id=\"text_2\">\n    <g clip-path=\"url(#pc12381c12f)\">\n     <!-- Website.Directory -->\n     <defs>\n      <path d=\"M 10.6875 12.40625 \nL 21 12.40625 \nL 21 0 \nL 10.6875 0 \nz\n\" id=\"DejaVuSans-46\"/>\n      <path d=\"M 19.671875 64.796875 \nL 19.671875 8.109375 \nL 31.59375 8.109375 \nQ 46.6875 8.109375 53.6875 14.9375 \nQ 60.6875 21.78125 60.6875 36.53125 \nQ 60.6875 51.171875 53.6875 57.984375 \nQ 46.6875 64.796875 31.59375 64.796875 \nz\nM 9.8125 72.90625 \nL 30.078125 72.90625 \nQ 51.265625 72.90625 61.171875 64.09375 \nQ 71.09375 55.28125 71.09375 36.53125 \nQ 71.09375 17.671875 61.125 8.828125 \nQ 51.171875 0 30.078125 0 \nL 9.8125 0 \nz\n\" id=\"DejaVuSans-68\"/>\n      <path d=\"M 41.109375 46.296875 \nQ 39.59375 47.171875 37.8125 47.578125 \nQ 36.03125 48 33.890625 48 \nQ 26.265625 48 22.1875 43.046875 \nQ 18.109375 38.09375 18.109375 28.8125 \nL 18.109375 0 \nL 9.078125 0 \nL 9.078125 54.6875 \nL 18.109375 54.6875 \nL 18.109375 46.1875 \nQ 20.953125 51.171875 25.484375 53.578125 \nQ 30.03125 56 36.53125 56 \nQ 37.453125 56 38.578125 55.875 \nQ 39.703125 55.765625 41.0625 55.515625 \nz\n\" id=\"DejaVuSans-114\"/>\n      <path d=\"M 48.78125 52.59375 \nL 48.78125 44.1875 \nQ 44.96875 46.296875 41.140625 47.34375 \nQ 37.3125 48.390625 33.40625 48.390625 \nQ 24.65625 48.390625 19.8125 42.84375 \nQ 14.984375 37.3125 14.984375 27.296875 \nQ 14.984375 17.28125 19.8125 11.734375 \nQ 24.65625 6.203125 33.40625 6.203125 \nQ 37.3125 6.203125 41.140625 7.25 \nQ 44.96875 8.296875 48.78125 10.40625 \nL 48.78125 2.09375 \nQ 45.015625 0.34375 40.984375 -0.53125 \nQ 36.96875 -1.421875 32.421875 -1.421875 \nQ 20.0625 -1.421875 12.78125 6.34375 \nQ 5.515625 14.109375 5.515625 27.296875 \nQ 5.515625 40.671875 12.859375 48.328125 \nQ 20.21875 56 33.015625 56 \nQ 37.15625 56 41.109375 55.140625 \nQ 45.0625 54.296875 48.78125 52.59375 \nz\n\" id=\"DejaVuSans-99\"/>\n      <path d=\"M 30.609375 48.390625 \nQ 23.390625 48.390625 19.1875 42.75 \nQ 14.984375 37.109375 14.984375 27.296875 \nQ 14.984375 17.484375 19.15625 11.84375 \nQ 23.34375 6.203125 30.609375 6.203125 \nQ 37.796875 6.203125 41.984375 11.859375 \nQ 46.1875 17.53125 46.1875 27.296875 \nQ 46.1875 37.015625 41.984375 42.703125 \nQ 37.796875 48.390625 30.609375 48.390625 \nz\nM 30.609375 56 \nQ 42.328125 56 49.015625 48.375 \nQ 55.71875 40.765625 55.71875 27.296875 \nQ 55.71875 13.875 49.015625 6.21875 \nQ 42.328125 -1.421875 30.609375 -1.421875 \nQ 18.84375 -1.421875 12.171875 6.21875 \nQ 5.515625 13.875 5.515625 27.296875 \nQ 5.515625 40.765625 12.171875 48.375 \nQ 18.84375 56 30.609375 56 \nz\n\" id=\"DejaVuSans-111\"/>\n      <path d=\"M 32.171875 -5.078125 \nQ 28.375 -14.84375 24.75 -17.8125 \nQ 21.140625 -20.796875 15.09375 -20.796875 \nL 7.90625 -20.796875 \nL 7.90625 -13.28125 \nL 13.1875 -13.28125 \nQ 16.890625 -13.28125 18.9375 -11.515625 \nQ 21 -9.765625 23.484375 -3.21875 \nL 25.09375 0.875 \nL 2.984375 54.6875 \nL 12.5 54.6875 \nL 29.59375 11.921875 \nL 46.6875 54.6875 \nL 56.203125 54.6875 \nz\n\" id=\"DejaVuSans-121\"/>\n     </defs>\n     <g transform=\"translate(199.54189 23.602159)scale(0.12 -0.12)\">\n      <use xlink:href=\"#DejaVuSans-87\"/>\n      <use x=\"93.001953\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"154.525391\" xlink:href=\"#DejaVuSans-98\"/>\n      <use x=\"218.001953\" xlink:href=\"#DejaVuSans-115\"/>\n      <use x=\"270.101562\" xlink:href=\"#DejaVuSans-105\"/>\n      <use x=\"297.884766\" xlink:href=\"#DejaVuSans-116\"/>\n      <use x=\"337.09375\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"398.617188\" xlink:href=\"#DejaVuSans-46\"/>\n      <use x=\"430.404297\" xlink:href=\"#DejaVuSans-68\"/>\n      <use x=\"507.40625\" xlink:href=\"#DejaVuSans-105\"/>\n      <use x=\"535.189453\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"574.052734\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"635.576172\" xlink:href=\"#DejaVuSans-99\"/>\n      <use x=\"690.556641\" xlink:href=\"#DejaVuSans-116\"/>\n      <use x=\"729.765625\" xlink:href=\"#DejaVuSans-111\"/>\n      <use x=\"790.947266\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"832.060547\" xlink:href=\"#DejaVuSans-121\"/>\n     </g>\n    </g>\n   </g>\n   <g id=\"text_3\">\n    <g clip-path=\"url(#pc12381c12f)\">\n     <!-- Website[user=monitor] -->\n     <defs>\n      <path d=\"M 8.59375 75.984375 \nL 29.296875 75.984375 \nL 29.296875 69 \nL 17.578125 69 \nL 17.578125 -6.203125 \nL 29.296875 -6.203125 \nL 29.296875 -13.1875 \nL 8.59375 -13.1875 \nz\n\" id=\"DejaVuSans-91\"/>\n      <path d=\"M 8.5 21.578125 \nL 8.5 54.6875 \nL 17.484375 54.6875 \nL 17.484375 21.921875 \nQ 17.484375 14.15625 20.5 10.265625 \nQ 23.53125 6.390625 29.59375 6.390625 \nQ 36.859375 6.390625 41.078125 11.03125 \nQ 45.3125 15.671875 45.3125 23.6875 \nL 45.3125 54.6875 \nL 54.296875 54.6875 \nL 54.296875 0 \nL 45.3125 0 \nL 45.3125 8.40625 \nQ 42.046875 3.421875 37.71875 1 \nQ 33.40625 -1.421875 27.6875 -1.421875 \nQ 18.265625 -1.421875 13.375 4.4375 \nQ 8.5 10.296875 8.5 21.578125 \nz\nM 31.109375 56 \nz\n\" id=\"DejaVuSans-117\"/>\n      <path d=\"M 10.59375 45.40625 \nL 73.1875 45.40625 \nL 73.1875 37.203125 \nL 10.59375 37.203125 \nz\nM 10.59375 25.484375 \nL 73.1875 25.484375 \nL 73.1875 17.1875 \nL 10.59375 17.1875 \nz\n\" id=\"DejaVuSans-61\"/>\n      <path d=\"M 45.40625 27.984375 \nQ 45.40625 37.75 41.375 43.109375 \nQ 37.359375 48.484375 30.078125 48.484375 \nQ 22.859375 48.484375 18.828125 43.109375 \nQ 14.796875 37.75 14.796875 27.984375 \nQ 14.796875 18.265625 18.828125 12.890625 \nQ 22.859375 7.515625 30.078125 7.515625 \nQ 37.359375 7.515625 41.375 12.890625 \nQ 45.40625 18.265625 45.40625 27.984375 \nz\nM 54.390625 6.78125 \nQ 54.390625 -7.171875 48.1875 -13.984375 \nQ 42 -20.796875 29.203125 -20.796875 \nQ 24.46875 -20.796875 20.265625 -20.09375 \nQ 16.0625 -19.390625 12.109375 -17.921875 \nL 12.109375 -9.1875 \nQ 16.0625 -11.328125 19.921875 -12.34375 \nQ 23.78125 -13.375 27.78125 -13.375 \nQ 36.625 -13.375 41.015625 -8.765625 \nQ 45.40625 -4.15625 45.40625 5.171875 \nL 45.40625 9.625 \nQ 42.625 4.78125 38.28125 2.390625 \nQ 33.9375 0 27.875 0 \nQ 17.828125 0 11.671875 7.65625 \nQ 5.515625 15.328125 5.515625 27.984375 \nQ 5.515625 40.671875 11.671875 48.328125 \nQ 17.828125 56 27.875 56 \nQ 33.9375 56 38.28125 53.609375 \nQ 42.625 51.21875 45.40625 46.390625 \nL 45.40625 54.6875 \nL 54.390625 54.6875 \nz\n\" id=\"DejaVuSans-103\"/>\n      <path d=\"M 54.890625 33.015625 \nL 54.890625 0 \nL 45.90625 0 \nL 45.90625 32.71875 \nQ 45.90625 40.484375 42.875 44.328125 \nQ 39.84375 48.1875 33.796875 48.1875 \nQ 26.515625 48.1875 22.3125 43.546875 \nQ 18.109375 38.921875 18.109375 30.90625 \nL 18.109375 0 \nL 9.078125 0 \nL 9.078125 54.6875 \nL 18.109375 54.6875 \nL 18.109375 46.1875 \nQ 21.34375 51.125 25.703125 53.5625 \nQ 30.078125 56 35.796875 56 \nQ 45.21875 56 50.046875 50.171875 \nQ 54.890625 44.34375 54.890625 33.015625 \nz\n\" id=\"DejaVuSans-110\"/>\n      <path d=\"M 30.421875 75.984375 \nL 30.421875 -13.1875 \nL 9.71875 -13.1875 \nL 9.71875 -6.203125 \nL 21.390625 -6.203125 \nL 21.390625 69 \nL 9.71875 69 \nL 9.71875 75.984375 \nz\n\" id=\"DejaVuSans-93\"/>\n     </defs>\n     <g transform=\"translate(352.223949 137.065679)scale(0.12 -0.12)\">\n      <use xlink:href=\"#DejaVuSans-87\"/>\n      <use x=\"93.001953\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"154.525391\" xlink:href=\"#DejaVuSans-98\"/>\n      <use x=\"218.001953\" xlink:href=\"#DejaVuSans-115\"/>\n      <use x=\"270.101562\" xlink:href=\"#DejaVuSans-105\"/>\n      <use x=\"297.884766\" xlink:href=\"#DejaVuSans-116\"/>\n      <use x=\"337.09375\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"398.617188\" xlink:href=\"#DejaVuSans-91\"/>\n      <use x=\"437.630859\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"501.009766\" xlink:href=\"#DejaVuSans-115\"/>\n      <use x=\"553.109375\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"614.632812\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"655.746094\" xlink:href=\"#DejaVuSans-61\"/>\n      <use x=\"739.535156\" xlink:href=\"#DejaVuSans-99\"/>\n      <use x=\"794.515625\" xlink:href=\"#DejaVuSans-103\"/>\n      <use x=\"857.992188\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"896.855469\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"958.378906\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"1019.902344\" xlink:href=\"#DejaVuSans-110\"/>\n      <use x=\"1083.28125\" xlink:href=\"#DejaVuSans-93\"/>\n     </g>\n    </g>\n   </g>\n   <g id=\"text_4\">\n    <g clip-path=\"url(#pc12381c12f)\">\n     <!-- GitHubProject -->\n     <defs>\n      <path d=\"M 59.515625 10.40625 \nL 59.515625 29.984375 \nL 43.40625 29.984375 \nL 43.40625 38.09375 \nL 69.28125 38.09375 \nL 69.28125 6.78125 \nQ 63.578125 2.734375 56.6875 0.65625 \nQ 49.8125 -1.421875 42 -1.421875 \nQ 24.90625 -1.421875 15.25 8.5625 \nQ 5.609375 18.5625 5.609375 36.375 \nQ 5.609375 54.25 15.25 64.234375 \nQ 24.90625 74.21875 42 74.21875 \nQ 49.125 74.21875 55.546875 72.453125 \nQ 61.96875 70.703125 67.390625 67.28125 \nL 67.390625 56.78125 \nQ 61.921875 61.421875 55.765625 63.765625 \nQ 49.609375 66.109375 42.828125 66.109375 \nQ 29.4375 66.109375 22.71875 58.640625 \nQ 16.015625 51.171875 16.015625 36.375 \nQ 16.015625 21.625 22.71875 14.15625 \nQ 29.4375 6.6875 42.828125 6.6875 \nQ 48.046875 6.6875 52.140625 7.59375 \nQ 56.25 8.5 59.515625 10.40625 \nz\n\" id=\"DejaVuSans-71\"/>\n      <path d=\"M 9.8125 72.90625 \nL 19.671875 72.90625 \nL 19.671875 43.015625 \nL 55.515625 43.015625 \nL 55.515625 72.90625 \nL 65.375 72.90625 \nL 65.375 0 \nL 55.515625 0 \nL 55.515625 34.71875 \nL 19.671875 34.71875 \nL 19.671875 0 \nL 9.8125 0 \nz\n\" id=\"DejaVuSans-72\"/>\n      <path d=\"M 19.671875 64.796875 \nL 19.671875 37.40625 \nL 32.078125 37.40625 \nQ 38.96875 37.40625 42.71875 40.96875 \nQ 46.484375 44.53125 46.484375 51.125 \nQ 46.484375 57.671875 42.71875 61.234375 \nQ 38.96875 64.796875 32.078125 64.796875 \nz\nM 9.8125 72.90625 \nL 32.078125 72.90625 \nQ 44.34375 72.90625 50.609375 67.359375 \nQ 56.890625 61.8125 56.890625 51.125 \nQ 56.890625 40.328125 50.609375 34.8125 \nQ 44.34375 29.296875 32.078125 29.296875 \nL 19.671875 29.296875 \nL 19.671875 0 \nL 9.8125 0 \nz\n\" id=\"DejaVuSans-80\"/>\n      <path d=\"M 9.421875 54.6875 \nL 18.40625 54.6875 \nL 18.40625 -0.984375 \nQ 18.40625 -11.421875 14.421875 -16.109375 \nQ 10.453125 -20.796875 1.609375 -20.796875 \nL -1.8125 -20.796875 \nL -1.8125 -13.1875 \nL 0.59375 -13.1875 \nQ 5.71875 -13.1875 7.5625 -10.8125 \nQ 9.421875 -8.453125 9.421875 -0.984375 \nz\nM 9.421875 75.984375 \nL 18.40625 75.984375 \nL 18.40625 64.59375 \nL 9.421875 64.59375 \nz\n\" id=\"DejaVuSans-106\"/>\n     </defs>\n     <g transform=\"translate(-14.481136 186.808287)scale(0.12 -0.12)\">\n      <use xlink:href=\"#DejaVuSans-71\"/>\n      <use x=\"77.490234\" xlink:href=\"#DejaVuSans-105\"/>\n      <use x=\"105.273438\" xlink:href=\"#DejaVuSans-116\"/>\n      <use x=\"144.482422\" xlink:href=\"#DejaVuSans-72\"/>\n      <use x=\"219.677734\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"283.056641\" xlink:href=\"#DejaVuSans-98\"/>\n      <use x=\"346.533203\" xlink:href=\"#DejaVuSans-80\"/>\n      <use x=\"405.085938\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"443.949219\" xlink:href=\"#DejaVuSans-111\"/>\n      <use x=\"505.130859\" xlink:href=\"#DejaVuSans-106\"/>\n      <use x=\"532.914062\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"594.4375\" xlink:href=\"#DejaVuSans-99\"/>\n      <use x=\"649.417969\" xlink:href=\"#DejaVuSans-116\"/>\n     </g>\n    </g>\n   </g>\n   <g id=\"text_5\">\n    <g clip-path=\"url(#pc12381c12f)\">\n     <!-- AzureStorage -->\n     <defs>\n      <path d=\"M 34.1875 63.1875 \nL 20.796875 26.90625 \nL 47.609375 26.90625 \nz\nM 28.609375 72.90625 \nL 39.796875 72.90625 \nL 67.578125 0 \nL 57.328125 0 \nL 50.6875 18.703125 \nL 17.828125 18.703125 \nL 11.1875 0 \nL 0.78125 0 \nz\n\" id=\"DejaVuSans-65\"/>\n      <path d=\"M 5.515625 54.6875 \nL 48.1875 54.6875 \nL 48.1875 46.484375 \nL 14.40625 7.171875 \nL 48.1875 7.171875 \nL 48.1875 0 \nL 4.296875 0 \nL 4.296875 8.203125 \nL 38.09375 47.515625 \nL 5.515625 47.515625 \nz\n\" id=\"DejaVuSans-122\"/>\n      <path d=\"M 53.515625 70.515625 \nL 53.515625 60.890625 \nQ 47.90625 63.578125 42.921875 64.890625 \nQ 37.9375 66.21875 33.296875 66.21875 \nQ 25.25 66.21875 20.875 63.09375 \nQ 16.5 59.96875 16.5 54.203125 \nQ 16.5 49.359375 19.40625 46.890625 \nQ 22.3125 44.4375 30.421875 42.921875 \nL 36.375 41.703125 \nQ 47.40625 39.59375 52.65625 34.296875 \nQ 57.90625 29 57.90625 20.125 \nQ 57.90625 9.515625 50.796875 4.046875 \nQ 43.703125 -1.421875 29.984375 -1.421875 \nQ 24.8125 -1.421875 18.96875 -0.25 \nQ 13.140625 0.921875 6.890625 3.21875 \nL 6.890625 13.375 \nQ 12.890625 10.015625 18.65625 8.296875 \nQ 24.421875 6.59375 29.984375 6.59375 \nQ 38.421875 6.59375 43.015625 9.90625 \nQ 47.609375 13.234375 47.609375 19.390625 \nQ 47.609375 24.75 44.3125 27.78125 \nQ 41.015625 30.8125 33.5 32.328125 \nL 27.484375 33.5 \nQ 16.453125 35.6875 11.515625 40.375 \nQ 6.59375 45.0625 6.59375 53.421875 \nQ 6.59375 63.09375 13.40625 68.65625 \nQ 20.21875 74.21875 32.171875 74.21875 \nQ 37.3125 74.21875 42.625 73.28125 \nQ 47.953125 72.359375 53.515625 70.515625 \nz\n\" id=\"DejaVuSans-83\"/>\n      <path d=\"M 34.28125 27.484375 \nQ 23.390625 27.484375 19.1875 25 \nQ 14.984375 22.515625 14.984375 16.5 \nQ 14.984375 11.71875 18.140625 8.90625 \nQ 21.296875 6.109375 26.703125 6.109375 \nQ 34.1875 6.109375 38.703125 11.40625 \nQ 43.21875 16.703125 43.21875 25.484375 \nL 43.21875 27.484375 \nz\nM 52.203125 31.203125 \nL 52.203125 0 \nL 43.21875 0 \nL 43.21875 8.296875 \nQ 40.140625 3.328125 35.546875 0.953125 \nQ 30.953125 -1.421875 24.3125 -1.421875 \nQ 15.921875 -1.421875 10.953125 3.296875 \nQ 6 8.015625 6 15.921875 \nQ 6 25.140625 12.171875 29.828125 \nQ 18.359375 34.515625 30.609375 34.515625 \nL 43.21875 34.515625 \nL 43.21875 35.40625 \nQ 43.21875 41.609375 39.140625 45 \nQ 35.0625 48.390625 27.6875 48.390625 \nQ 23 48.390625 18.546875 47.265625 \nQ 14.109375 46.140625 10.015625 43.890625 \nL 10.015625 52.203125 \nQ 14.9375 54.109375 19.578125 55.046875 \nQ 24.21875 56 28.609375 56 \nQ 40.484375 56 46.34375 49.84375 \nQ 52.203125 43.703125 52.203125 31.203125 \nz\n\" id=\"DejaVuSans-97\"/>\n     </defs>\n     <g transform=\"translate(372.186793 216.397951)scale(0.12 -0.12)\">\n      <use xlink:href=\"#DejaVuSans-65\"/>\n      <use x=\"68.408203\" xlink:href=\"#DejaVuSans-122\"/>\n      <use x=\"120.898438\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"184.277344\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"223.140625\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"284.664062\" xlink:href=\"#DejaVuSans-83\"/>\n      <use x=\"348.140625\" xlink:href=\"#DejaVuSans-116\"/>\n      <use x=\"387.349609\" xlink:href=\"#DejaVuSans-111\"/>\n      <use x=\"448.53125\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"489.644531\" xlink:href=\"#DejaVuSans-97\"/>\n      <use x=\"550.923828\" xlink:href=\"#DejaVuSans-103\"/>\n      <use x=\"614.400391\" xlink:href=\"#DejaVuSans-101\"/>\n     </g>\n    </g>\n   </g>\n   <g id=\"text_6\">\n    <g clip-path=\"url(#pc12381c12f)\">\n     <!-- Sharepoint -->\n     <defs>\n      <path d=\"M 54.890625 33.015625 \nL 54.890625 0 \nL 45.90625 0 \nL 45.90625 32.71875 \nQ 45.90625 40.484375 42.875 44.328125 \nQ 39.84375 48.1875 33.796875 48.1875 \nQ 26.515625 48.1875 22.3125 43.546875 \nQ 18.109375 38.921875 18.109375 30.90625 \nL 18.109375 0 \nL 9.078125 0 \nL 9.078125 75.984375 \nL 18.109375 75.984375 \nL 18.109375 46.1875 \nQ 21.34375 51.125 25.703125 53.5625 \nQ 30.078125 56 35.796875 56 \nQ 45.21875 56 50.046875 50.171875 \nQ 54.890625 44.34375 54.890625 33.015625 \nz\n\" id=\"DejaVuSans-104\"/>\n      <path d=\"M 18.109375 8.203125 \nL 18.109375 -20.796875 \nL 9.078125 -20.796875 \nL 9.078125 54.6875 \nL 18.109375 54.6875 \nL 18.109375 46.390625 \nQ 20.953125 51.265625 25.265625 53.625 \nQ 29.59375 56 35.59375 56 \nQ 45.5625 56 51.78125 48.09375 \nQ 58.015625 40.1875 58.015625 27.296875 \nQ 58.015625 14.40625 51.78125 6.484375 \nQ 45.5625 -1.421875 35.59375 -1.421875 \nQ 29.59375 -1.421875 25.265625 0.953125 \nQ 20.953125 3.328125 18.109375 8.203125 \nz\nM 48.6875 27.296875 \nQ 48.6875 37.203125 44.609375 42.84375 \nQ 40.53125 48.484375 33.40625 48.484375 \nQ 26.265625 48.484375 22.1875 42.84375 \nQ 18.109375 37.203125 18.109375 27.296875 \nQ 18.109375 17.390625 22.1875 11.75 \nQ 26.265625 6.109375 33.40625 6.109375 \nQ 40.53125 6.109375 44.609375 11.75 \nQ 48.6875 17.390625 48.6875 27.296875 \nz\n\" id=\"DejaVuSans-112\"/>\n     </defs>\n     <g transform=\"translate(6.764977 95.24889)scale(0.12 -0.12)\">\n      <use xlink:href=\"#DejaVuSans-83\"/>\n      <use x=\"63.476562\" xlink:href=\"#DejaVuSans-104\"/>\n      <use x=\"126.855469\" xlink:href=\"#DejaVuSans-97\"/>\n      <use x=\"188.134766\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"226.998047\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"288.521484\" xlink:href=\"#DejaVuSans-112\"/>\n      <use x=\"351.998047\" xlink:href=\"#DejaVuSans-111\"/>\n      <use x=\"413.179688\" xlink:href=\"#DejaVuSans-105\"/>\n      <use x=\"440.962891\" xlink:href=\"#DejaVuSans-110\"/>\n      <use x=\"504.341797\" xlink:href=\"#DejaVuSans-116\"/>\n     </g>\n    </g>\n   </g>\n   <g id=\"text_7\">\n    <g clip-path=\"url(#pc12381c12f)\">\n     <!-- AzureResourceManager -->\n     <defs>\n      <path d=\"M 44.390625 34.1875 \nQ 47.5625 33.109375 50.5625 29.59375 \nQ 53.5625 26.078125 56.59375 19.921875 \nL 66.609375 0 \nL 56 0 \nL 46.6875 18.703125 \nQ 43.0625 26.03125 39.671875 28.421875 \nQ 36.28125 30.8125 30.421875 30.8125 \nL 19.671875 30.8125 \nL 19.671875 0 \nL 9.8125 0 \nL 9.8125 72.90625 \nL 32.078125 72.90625 \nQ 44.578125 72.90625 50.734375 67.671875 \nQ 56.890625 62.453125 56.890625 51.90625 \nQ 56.890625 45.015625 53.6875 40.46875 \nQ 50.484375 35.9375 44.390625 34.1875 \nz\nM 19.671875 64.796875 \nL 19.671875 38.921875 \nL 32.078125 38.921875 \nQ 39.203125 38.921875 42.84375 42.21875 \nQ 46.484375 45.515625 46.484375 51.90625 \nQ 46.484375 58.296875 42.84375 61.546875 \nQ 39.203125 64.796875 32.078125 64.796875 \nz\n\" id=\"DejaVuSans-82\"/>\n      <path d=\"M 9.8125 72.90625 \nL 24.515625 72.90625 \nL 43.109375 23.296875 \nL 61.8125 72.90625 \nL 76.515625 72.90625 \nL 76.515625 0 \nL 66.890625 0 \nL 66.890625 64.015625 \nL 48.09375 14.015625 \nL 38.1875 14.015625 \nL 19.390625 64.015625 \nL 19.390625 0 \nL 9.8125 0 \nz\n\" id=\"DejaVuSans-77\"/>\n     </defs>\n     <g transform=\"translate(309.128898 62.949507)scale(0.12 -0.12)\">\n      <use xlink:href=\"#DejaVuSans-65\"/>\n      <use x=\"68.408203\" xlink:href=\"#DejaVuSans-122\"/>\n      <use x=\"120.898438\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"184.277344\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"223.140625\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"284.664062\" xlink:href=\"#DejaVuSans-82\"/>\n      <use x=\"349.646484\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"411.169922\" xlink:href=\"#DejaVuSans-115\"/>\n      <use x=\"463.269531\" xlink:href=\"#DejaVuSans-111\"/>\n      <use x=\"524.451172\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"587.830078\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"626.693359\" xlink:href=\"#DejaVuSans-99\"/>\n      <use x=\"681.673828\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"743.197266\" xlink:href=\"#DejaVuSans-77\"/>\n      <use x=\"829.476562\" xlink:href=\"#DejaVuSans-97\"/>\n      <use x=\"890.755859\" xlink:href=\"#DejaVuSans-110\"/>\n      <use x=\"954.134766\" xlink:href=\"#DejaVuSans-97\"/>\n      <use x=\"1015.414062\" xlink:href=\"#DejaVuSans-103\"/>\n      <use x=\"1078.890625\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"1140.414062\" xlink:href=\"#DejaVuSans-114\"/>\n     </g>\n    </g>\n   </g>\n   <g id=\"text_8\">\n    <g clip-path=\"url(#pc12381c12f)\">\n     <!-- AzureResourceManager[user=monitor] -->\n     <g transform=\"translate(94.4777 275.300513)scale(0.12 -0.12)\">\n      <use xlink:href=\"#DejaVuSans-65\"/>\n      <use x=\"68.408203\" xlink:href=\"#DejaVuSans-122\"/>\n      <use x=\"120.898438\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"184.277344\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"223.140625\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"284.664062\" xlink:href=\"#DejaVuSans-82\"/>\n      <use x=\"349.646484\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"411.169922\" xlink:href=\"#DejaVuSans-115\"/>\n      <use x=\"463.269531\" xlink:href=\"#DejaVuSans-111\"/>\n      <use x=\"524.451172\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"587.830078\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"626.693359\" xlink:href=\"#DejaVuSans-99\"/>\n      <use x=\"681.673828\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"743.197266\" xlink:href=\"#DejaVuSans-77\"/>\n      <use x=\"829.476562\" xlink:href=\"#DejaVuSans-97\"/>\n      <use x=\"890.755859\" xlink:href=\"#DejaVuSans-110\"/>\n      <use x=\"954.134766\" xlink:href=\"#DejaVuSans-97\"/>\n      <use x=\"1015.414062\" xlink:href=\"#DejaVuSans-103\"/>\n      <use x=\"1078.890625\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"1140.414062\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"1181.527344\" xlink:href=\"#DejaVuSans-91\"/>\n      <use x=\"1220.541016\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"1283.919922\" xlink:href=\"#DejaVuSans-115\"/>\n      <use x=\"1336.019531\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"1397.542969\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"1438.65625\" xlink:href=\"#DejaVuSans-61\"/>\n      <use x=\"1522.445312\" xlink:href=\"#DejaVuSans-99\"/>\n      <use x=\"1577.425781\" xlink:href=\"#DejaVuSans-103\"/>\n      <use x=\"1640.902344\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"1679.765625\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"1741.289062\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"1802.8125\" xlink:href=\"#DejaVuSans-110\"/>\n      <use x=\"1866.191406\" xlink:href=\"#DejaVuSans-93\"/>\n     </g>\n    </g>\n   </g>\n   <g id=\"text_9\">\n    <g clip-path=\"url(#pc12381c12f)\">\n     <!-- AzureVM -->\n     <defs>\n      <path d=\"M 28.609375 0 \nL 0.78125 72.90625 \nL 11.078125 72.90625 \nL 34.1875 11.53125 \nL 57.328125 72.90625 \nL 67.578125 72.90625 \nL 39.796875 0 \nz\n\" id=\"DejaVuSans-86\"/>\n     </defs>\n     <g transform=\"translate(310.398517 285.420341)scale(0.12 -0.12)\">\n      <use xlink:href=\"#DejaVuSans-65\"/>\n      <use x=\"68.408203\" xlink:href=\"#DejaVuSans-122\"/>\n      <use x=\"120.898438\" xlink:href=\"#DejaVuSans-117\"/>\n      <use x=\"184.277344\" xlink:href=\"#DejaVuSans-114\"/>\n      <use x=\"223.140625\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"284.664062\" xlink:href=\"#DejaVuSans-86\"/>\n      <use x=\"353.072266\" xlink:href=\"#DejaVuSans-77\"/>\n     </g>\n    </g>\n   </g>\n   <g id=\"text_10\">\n    <g clip-path=\"url(#pc12381c12f)\">\n     <!-- client -->\n     <defs>\n      <path d=\"M 9.421875 75.984375 \nL 18.40625 75.984375 \nL 18.40625 0 \nL 9.421875 0 \nz\n\" id=\"DejaVuSans-108\"/>\n     </defs>\n     <g transform=\"translate(123.47307 51.622159)scale(0.12 -0.12)\">\n      <use xlink:href=\"#DejaVuSans-99\"/>\n      <use x=\"54.980469\" xlink:href=\"#DejaVuSans-108\"/>\n      <use x=\"82.763672\" xlink:href=\"#DejaVuSans-105\"/>\n      <use x=\"110.546875\" xlink:href=\"#DejaVuSans-101\"/>\n      <use x=\"172.070312\" xlink:href=\"#DejaVuSans-110\"/>\n      <use x=\"235.449219\" xlink:href=\"#DejaVuSans-116\"/>\n     </g>\n    </g>\n   </g>\n  </g>\n </g>\n <defs>\n  <clipPath id=\"pc12381c12f\">\n   <rect height=\"288\" width=\"432\" x=\"7.2\" y=\"7.2\"/>\n  </clipPath>\n </defs>\n</svg>\n",
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAb4AAAEuCAYAAADx63eqAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nOzdd3wUdf7H8dfsbnrbNEg2pEDABLijSIckcGpQaSogCEEIIMf9FBGEswU1pyAW4FDvLGAJASQEjxOpgihNijkhIFJDSSCBFEJ62zK/PyKLEQiJBiLs5/l47OPcme/M9zuTc9/Od77zHUVVVRUhhBDCRmgauwFCCCHEzSTBJ4QQwqZI8AkhhLApEnxCCCFsigSfEEIImyLBJ4QQwqZI8AkhhLApEnxCCCFsigSfEEIIm6Jr7AYIIW48VbVAfjqUFwEqOLqDVzCKRtvYTRPippPgE+I2ppYXov64Gn5IBmMZXAo6iwV0Dqh3DkNpNxDF2bNxGyrETaTIXJ1C3J4s/0uCHQtAUcBUefVCOgdQVegRi9L1URRFubmNFKIRSPAJcRuybP03pP4XTBV120DnCG37odw9VcJP3PZkcIsQN0FCQgIRERH13m7p0qX07du3XttY9v2nfqEH1WV/Wof6vyTatm3Lli1b6tdQIW4hEnxC1GL27Nncf//9NZa1atXqqsuSkpIavP6YmBg2btxo/a4oCmlpadcsrxorYPv7Vw290/kVaKd/h/sLu3B/YRf+8d8z8ONDbDpWUF3AVAE7P+LgvhT69OnT0IdCSEgIX3/9dYPvV4j6kuATohZRUVHs3LkTs9kMwLlz5zAajezbt6/GsrS0NKKiohqzqdWObgZq76rMf7U7Ra/1YN/THYi+Q8+QhMMkpGRXr1Q0qIe+uua2JpOpARtbd41Vr7g9SfAJUYsuXbpgNBpJTU0FYPv27fzlL38hLCysxrLQ0FBcXFwYP348/v7+BAQEMGPGDGs4AqiqyqRJk/Dw8CA8PJzNmzdb1yUkJNCiRQvc3Nxo3rw5S5cutS6/1EV6KVjbt2+Pq6sry5cvB2DNmjV06NABvV5PrwdjOZCeV6dj83O3Z3KkgZf7BvH82nQsFhWM5bS4ZxSbNm0CID4+nqFDhzJq1Cjc3d1JSEigsLCw1uNcuHAhrVu3xs3NjTZt2rB3714effRRMjIyGDhwIK6urrz55psAfPnll7Rt2xa9Xk+fPn04fPiwdT8hISG88cYbtGvXDhcXF9566y2GDBlS4xgmT57MU089VafjFeISCT4hamFvb0+3bt3Ytm0bANu2bSMyMpKIiIgay6KiooiNjUWn05GWlsa+ffvYuHEjH330kXVfe/bsITQ0lLy8PP7xj38wePBg8vPzKS0tZfLkyaxfv57i4mJ27txJhw4drmjLpfr2799PSUkJw4cPZ9++fYwbN44PP/yQvHNnmNDFiwc/PUylyVLnY3zoz97klBg5mltevcBihsoS6/pVq1YxdOhQCgoKiImJqfU4V6xYQXx8PImJiRQVFfHll1/i7e3N4sWLCQoKYvXq1ZSUlPDMM89w7NgxRowYwfz588nNzaVfv34MHDiQqqoqa93Lli1j7dq1FBQUMGrUKDZs2EBBQXXXrMlkIikpidGjR9f5WIUACT4hrqt3797W0Nm+fTuRkZFERkbWWNa7d2/WrVvH/PnzcXFxoUmTJkydOrXGfb8mTZowZcoU7OzsGD58OGFhYaxduxYAjUbDwYMHKS8vx9/fn7Zt29apbQsWLGDixIl069YNrbGUMd0DcdAp7E4vrvPxGdztAcgv+7k7UVGgqty6vkePHjz44INoNBqKiopqPc6PPvqIZ555hi5duqAoCi1btiQ4OPiq9S5fvpz+/fsTHR2NnZ0d06dPp7y8nJ07d1rLTJ48mcDAQJycnPD39ycqKooVK1YAsGHDBnx8fOjUqVOdj1UIkOAT4rqioqLYsWMH+fn55Obm0qpVK3r27MnOnTvJz8/n4MGDhIeHYzQa8ff3R6/Xo9frmThxIjk5Odb9BAQE1HhUIDg4mKysLFxcXFi+fDkffPAB/v7+9O/fnyNHjtSpbenp6cydOxe9Xo9nUBhez23lTEEVWUVV19/4Z5mF1c/4eTn/Yj4LzeWfhsDAwBr11XacZ86cITQ0tE71ZmVl1QhFjUZDYGAgmZmZV60bYMyYMSxZsgSAJUuW8Oijj9bxKIW4TIJPiOvo0aMHhYWFLFy4kF69egHg7u6OwWBg4cKFGAwGgoKCcHBwIC8vj4KCAgoKCigqKuKnn36y7iczM5NfPjabkZGBwWAA4N5772XTpk2cO3eO8PBwJkyYUKe2BQYGEhcXR0FBARdzc8if1ZOS2T0Y0dG3zsf3xcF8mrjaEebrVL1AVcHe2br+l2EdGBhY63EGBgZy4sSJq9bz6+cDDQYD6enp1u+qqnLmzBkCAgKuuc2DDz7IgQMHOHjwIGvWrCEmJqbOxynEJRJ8QlyHk5MTnTt3Zt68eURGRlqXR0REMG/ePKKiovD396dv375MmzaNoqIiLBYLJ06cYOvWrdbyOTk5vPPOOxiNRlasWMHhw4fp168f2dnZrFq1itLSUhwcHHB1dUWjufq/mk2bNuXkyZPW7xMmTOCDDz5gz549oLOn1DuctYfyKa64/ijI7OIq/r3jHK9symBWv2A0mp9DRmuH8ovg+6XrHedjjz3GnDlz+OGHH1BVlbS0NGu4/brtw4YNY+3atWzevBmj0cjcuXNxcHCgZ8+e12yzo6MjQ4cOZeTIkXTt2pWgoKDrHqcQvybBJ0Qd9O7dm5ycnBoPoUdGRpKTk2MdbZmYmEhVVRVt2rTB09OToUOHcu7cOWv5bt26cfz4cXx8fIiLi+Pzzz/H29sbi8XCvHnzMBgMeHl5sXXrVt5///2rtiM+Pp4xY8ag1+tJTk6mc+fOLFy4kEmTJuHp6ckdf/8Pi/ZesJbvt/AnZm8+U2MfXi/uxu35XbSfk8q6IxdZ/mg447o2rV5p5wwOrrWei9qO8+GHHyYuLo6RI0fi5ubGgw8+SH5+PgDPP/88M2fORK/XM2fOHMLCwliyZAlPPvkkPj4+rF69mtWrV2Nvb19r/WPGjOHHH3+Ubk7xm8mUZULcRlTVgvrBg1CW/9t24OiO8n9fomj+uPPXZ2RkEB4ezvnz53F3d2/s5ohbkFzxCXEbURQNSv/46smn60vngNI//g8depeujh955BEJPfGbyRWfELchy9FvYcPMa7+V4dd0DtD3WTSt6zcv6M1UWlpK06ZNCQ4OZsOGDVeM+BSiriT4hLhNqWf3o26YBWUXwVgB/PpfdQXsHMHJHeXeF1CC5Hk4YRsk+IS4jamqClk/oqYsg9N7wGysnspTo4PgLihdRkJAe3kVkbApEnxC2BDVbARA0do1ckuEaDwSfEIIIWyKjOoUQghhUyT4hBBC2BQJPiGEEDZFgk8IIYRNkeATQghhUyT4hBBC2BQJPiGEEDbljzsbrfjjUFVQzdX/C6Bofv7IbB9CiFuPBJ+4NtVSPcejqZzqeR4vBZ1aHXw6p+rJjRXpOBBC3Dpk5hZxJVUFYzmYyupW3s4F7JxubJuEEKKBSPCJmlQVqkrAXMfX2VyicwZ75xvTJiGEaEDSRyUASEhIICIiovpKz1yJa5NgTp46XfcdmMp+fvWNEEL8sck9PlHTz92bJTnp9d/WWPrzPb/Lg15iY2Np1qwZM2fObKgWCiHE7yJXfOIy1fJ7dwDmqgZpihBC3CgSfDbozJkzDB48GF9fX7y9vZk0adLPjyxcDj7FxZe0EycBqKysZPrzLxMU1oGmIW342+TplJeXA7Bl23c0a9WOuW+/R5Pg1vg3C+bTTz8FYMGCBSxdupQ333wTV1dXBg4cePMPVgghfkWCz8aYzWYGDBhAcHAwp0+fJjMzk0ceeeTnZ/SuPs7puRdf5VjaCVJ3fUvaj9+TmXWOV2bPsa4/n51DYVERmWkH+Pi9f/LEE09w8eJF/vrXvxITE8MzzzxDSUkJq1evvklHKYQQ1ybBZ2O+//57srKyeOutt3BxccHR0bF6UEuN5/QuU1WVBZ8u5p9vvIqXlydubq688PcpJH3+hbWMnZ0dLz0/HTs7O/rdF42rqytHjx69eQclhBD1IINbbMyZM2cIDg5Gp6vbnz43N4+ysjI6RdxjXaaqKmaz2frd28uzxv6cnZ0pKSlpuEYLIUQDkuCzMYGBgWRkZGAymWqGn6Jwta5OHx9vnJyc+Ol/Owgw+Ne7PkWmNRNC/MFIV6eN6dq1K/7+/jz33HOUlpZSUVHBd9999/O0Y1eGlEajYULsKKY+O4OcnFwAMrPO8dWmb65egcauxtemTZty8uTJhj4MIUQdqEXnsWx7H8vCoVj+dV/1Z8EQLN++g1qY1djNazQSfDZGq9WyevVq0tLSCAoKolmzZixfvrx65TXm3Hxj5ku0bNGc7n+5H3e/5twzYAhHj6ddvYJfTV02fvx4Dh06hF6v58EHH2zIQxFCXIOan4FlxVOon4yEvclQdB4qS6o/xdmQuhL101FYlk9CzbO9/zCVKcvEZaoK5flca3TndSkacPSUtzYI0YjUzB9RV06DqkuTy1+HnRPKg6+jBHW64W37o5ArPnGZooC962/f3t5NQk+IRqTmnUT9z9NQVUad/wPWWI7632dRs4/c0Lb9kUjwiZp0DtVvW6gve1fQ2l2/nBA3UZ8+ffD09KSysp6TrjeA2NhY7O3tcXV1xcvLi+joaI4cuXHhoqoq6qoXftucuaYK1C+eR63j7E2xsbEoisKqVatqLJ86dSqKopCQkFD/NtxEEnziSnZO4ODO1Qa7XEHRgIMH6BxveLOEqI/Tp0+zfft2FEXhyy+/bNB9q6qKxXL9kLg0eUNmZiYBAQGMHz++QdtRQ9ZBKL1AXa/0TOZflassgfQf6lzdHXfcQWJi4uX9mUwkJycTGhpa5300Fgk+cXVae3Dyqg5AzVWeetHYVQeeo6dc6Yk/pMTERLp3705sbCyLFi0CICsrC1dXV+vH2dnZ+shNfHw8o0aNsm5/+vRpFEXBZDIB1VePcXFx9OrVC2dnZ06ePMmRI0eIjo7Gy8uLsLAwkpOTr9oWJycnhg0bRmpqqnVZVlYWQ4YMwdfXl+bNm/POO+9Y133//fd07twZd3d3mjZtytNPP21d9+WXX9K2bVv0ej19+vTh8OHDAKgpn6F96mvS8sqtZccmHefF9dUTzm9JKyTo1RTe/OYshn98z7jlxzFbVGZvPkOr2T/g8cw3dL5rAGfOnAG47rENHDiQHTt2cPHiRQA2bNhAu3bt8PPzs5Y5ceIEd911F97e3vj4+BATE0NBQYF1fUhICHPmzKFdu3Z4eHgwfPhwKiqqr1gvXrzIgAED8PX1xdPTkwEDBnD27FnrtqdOnSIqKgo3NzfuuecennjiiRp/v9pI8IlrU5TqAHTUg5P35Y+zDzh6VAee3NMTf1CJiYnExMQQExPDV199RXZ2NgaDgZKSEuvnoYceqp6yr44WL17MggULKC4uxtfXl+joaEaOHElOTg5JSUk8/vjjHDp06IrtSktLWbZsGS1btgTAYrEwcOBA2rdvT2ZmJps3b2b+/Pl89dVXADz11FM89dRTFBUVceLECYYNGwbAsWPHGDFiBPPnzyc3N5d+/foxcOBAKstL4dSu67b/fHEV+WUmTsV15sOHQ/nn1kyS9uWxZnxrCmZ256PBgTjpqtt7vWNzdHTkgQceICkpyXq+R48eXaM+VVV5/vnnycrK4vDhw5w5c4b4+PgaZZKTk9mwYQOnTp3iwIED1m5Si8XC2LFjSU9PJyMjAycnp+p5hX82cuRIunbtyoULF4iPj2fx4sXWdZmZmbWeBwk+UTeKcvkjxB/cjh07SE9PZ9iwYXTq1InQ0FA+++yzGmXeeOMNjhw5wieffFLn/cbGxtK2bVt0Oh0bNmwgJCSEsWPHotPp6NixI0OGDGHFihXW8nPmzEGv1+Pm5saOHTusP84pKSnk5uby0ksvYW9vT4sWLZgwYYI1ROzs7EhLSyMvLw9XV1e6d+8OwPLly+nfvz/R0dHY2dkxfXr1hPE7t3wNGu11269RFOLvDcJBp8HJTsvH32fzyn1BhDWpvvJtH+SJt5OGNWvWXPfYAEaPHk1iYiIFBQVs3br1ikeWWrZsSXR0NA4ODvj6+vL000+zdevWGmUmT56MwWDAy8uLgQMHWq+Kvb29GTJkCM7Ozri5uREXF2fdNiMjg5SUFF555RXs7e2JiIhg0KBB1n0uWbKk9vNw3TMlhBC3mEWLFtG3b198fHyA6quDS92dAOvXr+ftt9/miy++wMnJ6Vq7uUJgYKD1n9PT09mzZw96vd76Wbp0KefPn7eWmT59OgUFBZw+fRonJyfrHLbp6elkZWXV2Pa1114jOzsbgI8//phjx44RHh5Oly5dWLNmDVDdPRocHGzdv0ajITAwkMzMs9Tlnryvix2Odpd/9s8UVBHq/cv78wqYjXU6NoCIiAhyc3OZNWsWAwYMuOJcZmdn88gjjxAQEIC7uzujRo0iLy+vRplfdo3+crrDsrIyJk6cSHBwMO7u7kRFRVFQUIDZbCYrKwsvLy+cnZ2v+bepjUxZJoS4rZSXl5OcnIzZbLb+qFZWVlJQUMD+/ftxdHRkzJgxrFy5ssaPpYuLC2VlZdbvv/6Rh5pT8AUGBtK7d282bdp03TYFBQXx9ttvM2bMGAYMGEBgYCDNmzfn+PHjVy3fqlUrli1bhsViYeXKlQwdOpQLFy5gMBj48ccfreVUVeXMmTMEBLWAn0w422koq7o86OZ8cRXNPOx/0f6a9QTq7TlxoYI/+f88kls1g4NrvY5t1KhRvPLKK3z77bdXrHvhhRdQFIUff/wRLy8vvvjiixrdlbWZO3cuR48eZc+ePfj5+ZGamkrHjh1RVRV/f3/y8/MpKyuzht+le5NQMwSvRq74hBC3lS+++AKtVsuhQ4dITU0lNTWVw4cPExkZSUJCAg888ACzZs36+a0kl3Xo0IFt27aRkZFBYWEhs2fPrrWeAQMGcOzYMRYvXozRaMRoNJKSkmIdbPJr0dHRGAwGFixYQNeuXXFzc+ONN96gvLwcs9nMwYMHSUlJAaq76nJzc9FoNOj1eqD66m7YsGGsXbuWzZs3YzQamTt3Lg4ODvTsfRc4e9IhwIVl+3IxW1Q2HLnIthNFtR7D+K5NefmrDI7nlqOqKgdyjFyoUOt1bJMnT2bTpk1ERUVdsa64uBhXV1c8PDzIzMzkrbfeqrU9v97WyckJvV5Pfn4+//jHP6zrgoOD6dy5M/Hx8VRVVbFr164arz273iAXCT4hxG1l0aJFjB07lqCgIPz8/KyfSZMmsWzZMo4ePcrUqVNrjO6E6mAaPnw47dq1o1OnTgwYMKDWetzc3Ni4cSNJSUkYDAb8/Px49tlna31m8O9//ztvvvkmJpOJNWvWkJqaSvPmzfHx8eGxxx6jsLAQqB4h2bZtW1xdXXnqqadISkrCycmJsLAwlixZwpNPPomPjw+rV69m9erVODg4QJeR/HNwOGsO5eP14m4+25vLA3/yqvUYpvYO4OH2Pty34Cf0M/Yw4b9nqaiorNexeXl5cffdd191QvqXX36ZvXv34uHhQf/+/Rk8eHCt7fmlKVOmUF5ejo+PD927d+e+++6rsX7p0qXs2rULb29vZsyYwfDhw6vPA9e/4pMpy4QQ4jagVpagvj8IzFW/bQdae5S//gfF2bNhG3aTDB8+nPDw8BpXhtciV3xCCHEbUBxcodPw3zaZhM4R2g26pUIvJSWFEydOYLFY2LBhA6tWrarzRPgyuEUIIW4TSsQE1Itn4NRuMNVx6jKdIwR2QOnz5I1tXAM7f/48gwcP5sKFCzRr1oz333+fjh071mlb6eoUQojbiKpaUL+ZDwfXgtlUPVLzahQtaHUQdjdK32dQrjZD021Kgk8IIW5D6oVTqD8kw+GN1dMOXpqAWtGAxQh33IXSaThKk1aN29BGIMEnhBC3MbWqDM6mQnn1iFEc3aFZ++p7gjZKgk8IIYRNkVGdQgghbIoEnxBCCJsiwSeEEMKmSPAJIYSwKRJ8QgghbIoEnxBCCJsiwSeEEMKmSPAJIYSwKRJ8QgghbIoEnxBCCJsiwSeEEMKmSPAJIYSwKX+4FzCV5GVzYPVnXDh1jMrSYpz03gT8qRNt7huKvZNzYzdPCCHELe4P83aGjL072bHwLU58twlFUTBVXn57sL2zK6qq0mHwGHqOnYJns+aN2FIhhBC3skYPPlVV2fb+a+xY8CbGynKopTkanR1ae3uGv7OClhHRN7GVQgghbhe/+R5fQkICERERv7sB3777CjsWvomxoqzW0AOwmIwYy0pJmjSEEzs312n/27dvJyws7He3UwghxO3husG3Y8cOevbsiYeHB15eXvTq1YuUlJQGqfzYlnXs+mQexvKyem1nqihn+aShFGVnXbdsZGQkR48erdN+t2zZQrNmzerVFiGEELeWWoOvqKiIAQMG8OSTT5Kfn09mZiYvv/wyDg4ODVL5t+/+A2NFGZbf0NtqNhlJWfZBg7RDCCGE7ag1+I4dOwbAiBEj0Gq1ODk50bdvX9q1a2ctM336dDw9PWnevDnr16+3Lv/0009p3bo1bm5utGjRgg8//NC6bsuWLRj8/PjPrlTmpJlYdd6CqqrsuGDhnZMm3jxuYkWWmXJzdSAWGFX+cdTEDwUW5qaZmJtmYvv5clI+ex+z0UhlZSVTpkzBYDBgMBiYMmUKlZWV1rp+eRUXEhLCnDlzaNeuHR4eHgwfPpyKigpKS0u5//77ycrKwtXVFVdXV7Kyrn9FKYQQ4tZSa/DdcccdaLVaxowZw/r167l48WKN9Xv27CEsLIy8vDyeeeYZxo8fz6WxMk2aNGHNmjUUFRXx6aefMnXqVPbu3WvdNjsnh7IqM1NaaBnQVMOeApUjJRZiA7U8HarFUQPrsi016jtdpvJkCy2jArV8l2/h2MUKjm1Zy6xZs9i9ezepqans37+f77//npkzZ17zuJKTk9mwYQOnTp3iwIEDJCQk4OLiwvr16zEYDJSUlFBSUoLBYKj3CRVCCPHHVmvwubu7s2PHDhRFYcKECfj6+jJo0CCys7MBCA4OZsKECdZwPHfunHVd//79CQ0NRVEUevfuTd++fdm+fbt134oCfbxAp1Gw0yj8UGDhLh8N7nYKOo1CHx8Nh4rVGt2gvb012GsUmjoodHBXSM0rI+/UMZYuXcpLL71EkyZN8PX15eWXX2bx4sXXPK7JkydjMBjw8vJi4MCBpKam/q6TKIQQ4tZx3cEtrVu3JiEhgbNnz3Lw4EGysrKYMmUKAH5+ftZyzs7VD5eXlJQAsH79erp3746Xlxd6vZ5169aRl5dnLe9qp0WnUazfC4ywPMvC68dNvH7cxL9PmVEUKDFdbou73eV/9rBTKDaqlBdeJCsri+DgYOu64ODgWrspf93uS20WQghx+6vX4wzh4eHExsZy8ODBWstVVlYyZMgQpk+fTnZ2NgUFBfTr149fPjKoaGpW7aGDmAAtz7XSWT8z7tDhbnc5HIuMl8sXmlTcdApO7noMBgPp6enWdRkZGb+pm1JRlOsXEkIIcUurNfiOHDnC3LlzOXv2LABnzpxh2bJldO/evdadVlVVUVlZia+vLzqdjvXr17Nx48YaZbQ6HYpGa/3eSa/hmzwzBcbqcCw1qRwprnmPb9sFC0aLSk6lSmqhSntfJzwDmzNixAhmzpxJbm4ueXl5vPLKK4waNaruZ+FnTZs25cKFCxQWFtZ7WyGEELeGWufqdHNzY8+ePcybN4+CggL0ej0DBgzgrbfeYuXKlbVu98477zBs2DAqKysZOHAggwYNqlHGztkVnX1F9YPrQHdPBdCw5IyZYhO46KCtm0K42+Vtgp0V3jlpRgV6empo5WZH2N2DmHHXIIqKiqyjTR9++GFmzJhR75MRHh7OiBEjaNGiBWazmUOHDskAFyGEuM006pRl/x7Qnty0Q9ctV2BUefukmRfv0KL5uTtSa2dPl5H/x33Pz7nRzRRCCHEbadTXEvWZ9CJ2v/GNCxqdjm6PTmrgFgkhhLjdNWrwtb1vKB0eGl3v8LNzdGLwm4vwbBZyYxomhBDittXob2ewWCxsmD2NfZ9/irG8tNayikaDzt6RB15byJ/6DbtJLRRCCHE7afTgu+Tot2vZ/sFszh/Zj8VsxmK6/OyCztEJ1WIh/K6BRP7tOfzC2zdiS4UQQtzK/jDBd0neqWPs/fxTLpw6Wv0Gdg8vmrXvSsfBsTh7ejd284QQQtzi/nDBJ4QQQtxIjTq4RQghhLjZJPiEEELYFAk+IYQQNkWCTwghhE2R4BNCCGFTJPiEEELYFAk+IYQQNkWCTwghhE2R4BNCCGFTJPiEEELYFAk+IYQQNkWCTwghhE2R4BNCCGFTJPiEEELYFAk+IYQQNkWCTwghhE2R4BNCCGFTJPiEEELYFAk+IYQQNkWCTwghhE2R4BNCCGFTJPiEEELYFF1jN0AIIYRtyj76I7sX/4vzh/dRWVKMnZMLvi3C6TrqcQI79kBRlBtSr6KqqnpD9iyEEEJcxdFv1/LN/JfITz+OyViFajZfXqko2Dk64+rTlKjHX6DDg6MbPAAl+IQQQtwUqqry7bv/YNcn/8RYUXbd8nZOzrTuO5gHZi1Eq2u4Dkq5xyeEELe4hIQEIiIi6r3d0qVL6du372+uV1EUXFxciIuLq1P5bR/MZtendQs9AGN5GYe/Wsnql/5GQ16jSfAJIUQjmT17Nvfff3+NZa1atbrqsqSkpAavPyYmho0bN1q/K4pCWlpavfaxf/9+Zs2add1yZ/fvYceHr2Msr1voXWKsKOOn9Z/z04bP67VdbST4hBCikURFRbFz507MP9/jOnfuHEajkX379tVYlpaWRlRUVGM29XfbsfAtjJUVv2lbY3kp2z94HajuLrVYLL+rLRJ8QgjRSLp06YLRaCQ1NRWA7du385e//IWwsLAay0JDQ3FxcWH8+PH4+/sTEBDAjBkzrOEI1YEwadIkPDw8CA8PZ/PmzdZ1CfH+V2wAACAASURBVAkJtGjRAjc3N5o3b87SpUutyy91kV4K1vbt2+Pq6sry5csBWLNmDR06dECv19OzZ08OHDhwzePZsmULzZo1q7EsJCSE1StXcHzbBjLLLCw4bWL2cRNz0kx8lXO5/WfLVT5ON/H6cRMfnDZxuuxyuCVkmFi++yBd7+yIs7MzJ0+erP/J/gV5nEEIIRqJvb093bp1Y9u2bXTq1Ilt27YRGRmJwWCosSwqKorY2FiaNGlCWloapaWlDBgwgMDAQCZOnAjAnj17GDp0KHl5eaxcuZLBgwdz6tQpHBwcmDx5MikpKYSFhXHu3Dny8/OvaMu2bdtQFIX9+/fTsmVLAPbt28e4ceNYvXo1nTt3ZsmSJQwaNIijR4/i4OBQ5+M8vWcriqKwIcdMN08N7T00VFlUciqr1xcZVT47a+Yhfw0tXRROlqkkZ1p4ormCi656ROe+/CpmD2vLX79PQVVVHn/8cT777LOr1hcUFFRrQMsVnxBCNKLevXuzbds2oPrqLjIyksjIyBrLevfuzbp165g/fz4uLi40adKEqVOn1rjv16RJE6ZMmYKdnR3Dhw8nLCyMtWvXAqDRaDh48CDl5eX4+/vTtm3bOrVtwYIFTJw4kW7duqHVahkzZgwODg7s3r27XsdYnHMOU2UFGgXyjSplJhV7jUIzp+pQO1Ck0spVoZWrBkVRCHXRYHBUOF56eUBLBw8Ft7J8dDoddnZ2vPfeexQUFFz1U1vogVzxCSFEo4qKiuLf//43+fn55Obm0qpVK5o2bcqYMWPIz8/n4MGDhIeHYzQa8ff3t25nsVgIDAy0fg8ICKjxvFtwcDBZWVm4uLiwfPly5syZw/jx4+nVqxdz584lPDz8um1LT09n0aJFvPvuu9ZlVVVVZGVl1esYjRXlAAzy07Ilz8K/TpvxtIPe3hrucNVQaFL5qVjlaInp8vGpEOJ8+XjcdQpVZaX1qvdaJPiEEKIR9ejRg8LCQhYuXEivXr0AcHd3x2AwsHDhQgwGA0FBQTg4OJCXl4fuGs+zZWZmoqqqNfwyMjIYNGgQAPfeey/33nsv5eXlzJgxgwkTJrB9+/brti0wMJC4uLg6P67g4uJCWdnlUZtms5nc3Fwc3DyoALztFYYYtKiqyuESleQsC8+0VHDXKbRzrw7Ga1EAJw9P6/e//e1vLFmy5Kplg4OD+emnn665L+nqFEKIRuTk5ETnzp2ZN28ekZGR1uURERHMmzePqKgo/P396du3L9OmTaOoqAiLxcKJEyfYunWrtXxOTg7vvPMORqORFStWcPjwYfr160d2djarVq2itLQUBwcHXF1d0Wiu/tPftGnTGgNHJkyYwAcffMCePXtQVZXS0lLWrl1LcXHxVbe/4447qKioYO3atRiNRmbOnEllZSXewaHYO7tyoNBCqak6nB1/boICtHNXOFaiklZqwaKqmCwqp8ssFBkvd3Vq7Oxo1qG79fsHH3xASUnJVT+1hR5I8AkhRKPr3bs3OTk5NR5Cj4yMJCcnxzraMjExkaqqKtq0aYOnpydDhw7l3Llz1vLdunXj+PHj+Pj4EBcXx+eff463tzcWi4V58+ZhMBjw8vJi69atvP/++1dtR3x8PGPGjEGv15OcnEznzp1ZuHAhkyZNwtPTk5YtW5KQkHDN4/Dw8OC9997jscceIyAgABcXF5o1a0bQnT1RNBrSSlXeO23mtWMmNuRYGOqvwU6j4GGn8EiAlh0XLLyVZuafJ83szFep8ci6Cnc+PO73nGYrmbJMCCHEb+Lo6GgdNfrqq6/WWnbjW8+xZ/G7mKuq6l+RohB+9yAe+VfDPMQuwSeEEOKGKzx/lvf6t6Oy9OrdpLWxc3Rm3LKt+Lfu0CBtka5OIYQQN5yHXzNGfvgldo7O9drOztGJQbMWNFjogVzxCSGEuIky9n7H0r8OwmwyYvr5MYer0drbo9HoGPzWIlpHP9igbZDgE0IIcVOV5ufyw/KP2J34DqaqSsxVlZiNVWh0dugcHFEUhU7DJ9A15nH0hqAGr1+CTwghRKOwmM2c+G4TeSePWN/A7hnYnDv69ENnX/cp0epLgk8IIYRNkcEtQgghbIoEnxBCCJsiwSeEEMKmSPAJIYSwKRJ8QgghbIoEnxBCCJsiwSeEEMKmSPAJIYSwKRJ8QgghbIoEnxBCCJsiwSeEEMKmSPAJIYSwKRJ8QgghbIoEnxBCCJsiwSeEEMKmSPAJIYSwKRJ8QgghbIoEnxBCCJsiwSeEEMKmSPAJIYSwKRJ8QgghbIoEnxBCCJsiwSeEEMKmSPAJIYSwKRJ8QgghbIoEnxBCCJsiwSeEEMKmSPAJIYSwKRJ8QgghbIruZlSiqiqgAqAokrVCCCEazw0LPlVVobIYyvLAVH55OQo4uoOTD4qd442qXgghhLgqRa2+HGtQavlFKDn/80We5VpVg9YePJqh6CQAhRBC3BwNHnxqSTaUXeBS1+b1W6ABfTCKnXNDNkMIIYS4qga94aaWXaB5mzv5euvOemxkgYJ0VFNlvepaunQpffv2rWcLhRBC2Lo6BZ+iKKSlpdVaRrWYoCS71jJbvvserd+fcWveBfcWXQnvOYBPl/23OvyKMuveaiAmJoaNGzfWa5tfO336NIqiYDKZftd+hBBC3DoabnBL+cU6FTP4NeFM6mZUVWXV+m94+LGn6XZnO9qEtUQ1VaLoHAAwmUzodDdl0KkQQggbUu+uztjYWGbMmGH9vmXLFpo1a1bjvl5K6kHaRg7C646ejHtqBhUVV3ZjKorCg/3uxlPvzqFjJ0hI+i8RERFMnToVb29v4uPjKSwsZPTo0fj6+hIcHMzMmTOxWKoHyyQkJBAREWHd35EjR4iOjsbLy4uwsDCSk5Ot68rLy5k2bRrBwcF4eHgQERFBeXk5UVFRAOj1elxdXdm1a1d9T4cQQohbTAPd47v8nB7AZ/9Zy4akD0nbs55jJ04z858fXrGFxWLhv+u+pqCwmD+3bgXAnv/to0WLFmRnZxMXF8eTTz5JYWEhJ0+eZOvWrSQmJvLpp59esa/S0lKio6MZOXIkOTk5JCUl8fjjj3Po0CEApk+fzg8//MDOnTvJz8/nzTffRKPRsG3bNgAKCgooKSmhR48eDXM6hBBC/GHVGnx6vR69Xl/vnT4xfgSBAf54eXrwwpS/kvTfddZ1Wedz8GzVA9/WEbwy530S//UaYS2bA2Dw8+XJJ59Ep9Nhb29PUlISs2fPxs3NjZCQEKZNm8bixYuvqG/NmjWEhIQwduxYdDodHTt2ZMiQIaxYsQKLxcInn3zC22+/TUBAAFqtlp49e+Lg4FDv4xJCCHHrq/UmWkFBAVDdLVkfgQY/6z8HNzOQlZ1r/X7pHt/1tsvLy8NoNBIcHHx5X8HBZGZeOQgmPT2dPXv21Ahpk8nEo48+Sl5eHhUVFYSGhtbrGIQQQtye6j16xMXFhbKyMuv38+fPX1HmTNblZRmZ5zA09a3Tvn85nZmPjw92dnakp6fTpk2b6n1lZBAQEHDFdoGBgfTu3ZtNmzZdsc5iseDo6MiJEydo3779r+qrX6ALIYS49dX7Hl+HDh1Yt24d+fn5nD9/nvnz5wMK/OI5+Pc+SeJs1nnyLxby2vwFDHvgvrrt/BfBp9VqGTZsGHFxcRQXF5Oens68efMYNWrUFZsNGDCAY8eOsXjxYoxGI0ajkZSUFA4fPoxGo2HcuHE8/fTTZGVlYTab2bVrF5WVlfj6+qLRaDh58mR9T4MQQohbVL2D79FHH6V9+/aEhITQt29fhg8fXr3C8XI344jB/bh3+F8J7XofoSGBzJg68fo7VgCtXY1F7777Li4uLrRo0YKIiAhGjhzJuHHjrtjUzc2NjRs3kpSUhMFgwM/Pj2effZbKyurRpHPmzOHPf/4zXbp0wcvLi2effRaLxYKzszNxcXH06tULvV7P7t2763s6hBBC3GIabMoy1VQJ+Seo81Rlv6a1B6+Wde5+/OSTT1iyZAnffPPNb6tPCCGETWqwKcsUnQM4elB96VbvrcHNv1733H766SeaN2/+G+oSQghhyxp2ahQ3A1iMUFVG3a/8fg49e9c6V/Pggw9y/PhxVqxY8ZuaKYQQwnY1/NsZVBWKz0FFwaUl1yipqb44dA9AcXBvyCYIIYQQ13RD3scHoJqNUH7hyjk8VbV6EIuzDzh6yBvZhRBC3FQ3LPguUVULmKvAYgZFAY0ORWt/I6sUQgghrumGB58QQgjxRyL9jEIIIWyKBJ8QQgibIsEnhBDCpkjwCSGEsCkSfEIIIWyKBJ8QQgibIsEnhBDCpkjwCSGEsCkSfEIIIWxKw76dQQghhPgVNTcNzh2CypLquZpdfaB5DxQ7x0ZpjwSfEEKIBqeaquD4FtTvl0LBWUABiwkUDWh1oFpQ2/RDuXMoilfQTW2bzNUphBCiQanFOajLJ0HZRTCWX7ugRgcaLURMRNNp2E1rnwSfEEKIBqMW56AuHgcVxaCa67aRzhG6jkLTI/aGtu0SGdwihBCiQahmE2ry5PqFHoCpAr5fjHp8641r3C9I8AkhxG2oT58+eHp6UllZefMqPfkdlF7g7MUyhi46QpOX9uA5Yzft3tpHQko2AKfzK9BO/w6T+VedjaZK1G3vczM6ISX4hBDiNnP69Gm2b9+Ooih8+eWXDbpvVVWxWCxXX/f9EjCWM2bZMQL19pyK60zuP7qxaGQrmrrW4QXkpXlw/lCtRUwm029pdg0SfEIIcZtJTEyke/fuxMbGsmjRIgCysrJwdXW1fpydnVEUBYD4+HhGjRpl3f706dMoimINmT59+hAXF0evXr1wdnbm5MmTHDlyhOjoaLy8vAgLC2P5J+9B3kkAUs6UMKZzE1wctOi0Ch0DXLm/tWf1vt77EQCvF3fj/sIudp0uwmJRmfX1GZrH76Bp666MHj2awsLCGm35+OOPCQoK4q677gLg4Ycfxs/PDw8PD6Kiovjpp5+s7b9w4UKt50eCTwghbjOJiYnExMQQExPDV199RXZ2NgaDgZKSEuvnoYce4pFHHqnzPhcvXsyCBQsoLi7G19eX6OhoRo4cSU5ODklJSTwx7XkOZVeP4Owe7MaT/z1J0r5cMi7W7Grd8vifAch/tTtFr/WgR4g7Cf/LYVFKDpv/9ifSXrmHkpISJk2aVGO7rVu3cvjwYb766isA7r//fo4fP05OTg533nknMTEx1rJPPPFErcciwSeEELeRHTt2kJ6ezrBhw+jUqROhoaF89tlnNcq88cYbHDlyhE8++aTO+42NjaVt27bodDo2bNhASEgIY8eORafT0bFjRwbf3Z3P950HYPmj4UQ0d2fW12cIfe1/3DkvlZSM4mvue9neXKZGGWjh7YirtorZs2eTlJRUo1szPj4eFxcXnJycABg3bhxubm44ODgQHx/P/v37KSwsxGw285///KfWY5HgE0KI28iiRYvo27cvPj4+AIwcOdLa3Qmwfv163n77bb744gtriNRFYGCg9Z/T09PZs2cPer3e+vls3TbOF1cB4OmsY3b/EH78+52ci+9Ke4MLgxOOXHPgSlZRFUGeDtVftHYEBwdjMpnIzs6+av1ms5nnnnuO0NBQ3N3dCQkJASAvL4/c3Nzr3geUmVuEEOI2UV5eTnJyMmazGT8/PwAqKyspKChg//79ODo6MmbMGFauXFkjSFxcXCgrK7N+P3/+/BX7vnQ/EKpDqHfv3mzatMm6TM34AXXV81BVVmM7Hxc7pvU2kPi/HPLLTChcyeBuf7lL1NWXjIwMdDodTZs25ezZs1fU/9lnn7Fq1Sq+/vprQkJCKCwsxNPTE1VV8fX1RaerPdrkik8IIW4TX3zxBVqtlkOHDpGamkpqaiqHDx8mMjKShIQEHnjgAWbNmkVERESN7Tp06MC2bdvIyMigsLCQ2bNn11rPgAEDOHbsGIsXL8ZoNGI0Gkk5Z+RwTnV4PbfmNAfPlWIyqxRXmPhg13la+jji7WKHr6sdGgVO5ldY9ze8ow/zt2dxqghKw/rzwgsvMHz48GsGWHFxMQ4ODnh7e1NWVsYLL7xgXafVahk8eHCt7ZfgE0KI28SiRYsYO3YsQUFB+Pn5WT+TJk1i2bJlHD16lKlTp9YY3QkQHR3N8OHDadeuHZ06dWLAgAG11uPm5sbGjRtJSkrCYDDg5+fHc8+/QGXLu0DrQJnRwpBFR/B6cTctZ/9A+sVKvhjbGgBney0v3N2MyH8dwGvGbnanFzOuS1NG3elLn3f+R4t+E3F0dOTdd9+9Zv2jR48mODiYgIAA2rRpQ/fu3Wus/9e//lVr+2XKMiGEEA1CLc1H/ehhMP2Gh+Z19tDuQTR/mdzwDfsVueITQgjRIBQXL7gvDnQO9dtQowPPIJTIiQ3SjiNHjtReXYPUIoQQQgCasLvg7qfrHn5ae/BujvLwOyj1DcxrKC6+9qMTIF2dQgghbgD17H7Ube9BznFQLdXv4vslO6fqd/N1eAilx9gGC726kOATQghxw6j5Gah7P4ez+6Cq9Oc3sPuitH8IWkWhaO1uepsk+IQQQtgUuccnhBDCpkjwCSGEsCkSfEIIIWyKBJ8QQgibIsEnhBDCpkjwCSGEsCkSfEIIIWyKBJ8QQgibIsEnhBDCpkjwCSGEsCkSfEIIIWyKBJ8QQgibIsEnhBDCpkjwCSGEsCkSfEIIIWyKBJ8QQgibIsEnhBDCpkjwCSGEsCkSfEIIIWyKBJ8QQgibIsEnhBDCpkjwCSGEsCkSfEIIIWyKBJ8QQgibIsEnhBDCpkjwCSGEsCkSfEIIIWyKBJ8QQgibIsEnhBDCpkjwCSGEsCkSfEIIIWyKBJ8QQgibIsEnhBDCpkjwCSGEsCm6xm7A7cZiNlNRXIhqMePo7olWJ6dYCCH+SORXuQGoqsqpPVv47uO5nNz5NRqtDkVRMBur8GvdgYgJzxB+9yC0dnaN3VQhhLB5iqqqamM34laW/sMO/jPtUSqKCqgqK7lqGXsXVzRaHffPeJv2g0be5BYKIYT4JQm+3+Hwpi9Y+ffRGCvK61Re5+hE1MTnifq/529wy4QQQlyLBN9vlLH3OxaP60dKdgl7Cy2MC6pbr7GdozP3z/gnhysdWLRoERs3brzBLRVCCPFLNjuqc/bs2dx///01lrVq1eqqy5KSkmosU1WVlc/EYqwoq3e9xooy1s2cwtAHBtUIPUVRSEtLq/f+xM2nqipqxg+ouz7Fsnkelq3/Rt2bjFqc29hNE0LUgc0ObomKiuL111/HbDaj1Wo5d+4cRqORffv21ViWlpZGVFRUjW0z9n5Haf5v/5FTFA37v1xK15F/+72HIW4itbIU9eBa+N8yqCwBYwVQ3WGiau1h2weogR1RusSgBN3ZuI0VQlyTzV7xdenSBaPRSGpqKgDbt2/nL3/5C2FhYTWWhYaG4uLiwvjx4/H39ycgIIApf32MyrLSyztTYV22mdePm/jXKRMnSy3WVamFFt4+aWL2MRNvnzRxoMiCsbyUf776EhEREQDWYG3fvj2urq4sX74cgDVr1tChQwf0ej09e/bkwIEDN+PUiKtQL55FTYiBHQugJBeM5VwKPQDMVdWf03tQv3gGy6a3UC3mRmuvEOLabDb47O3t6datG9u2bQNg27ZtREZGEhERUWNZVFQUsbGx6HQ60tLS2Lt3LymHj7G34HK4na0ATzuFv7fU0sdbQ3KWhXKzSpVFZX2OhZhmWp6/Q8e4IC1+DgoAVaXFmCorrPUA7N+/n5KSEoYPH86+ffsYN24cH374IRcuXGDixIkMGjSIysrKm3maBKAWnkNdOgFKL4Cp4vobGCvg0AbU9TNp6FvoISEhODk58eijjzbofm3N119/jaurKxqNhq+//rqxmyNuMpsNPoDevXtbQ2f79u1ERkYSGRlZY1nv3r1Zt24d8+fPx8XFBU93N3p46fip6PIPmosWunsqaBWFP7lr8LaHYyXV6xUgp1LFaFFx0yk0+Tn4FK0Wi8kIQJ8+fQBqhNqCBQuYOHEi3bp1Q6vVMmbMGBwcHNi9e3eDnoPY2Fjs7e1xdXXFy8uL6Ohojhw50qB1NJbY2FgURWHVqlU1lk+dOhVFUUhISLjuPlSLCTV5MlSVQn1CzFQJadtR9ybXs9XXt3r1ahYvXtzg+7Ul99xzDyUlJQQFBTV2U0QjsOngi4qKYseOHeTn55Obm0urVq3o2bMnO3fuJD8/n4MHDxIeHo7RaMTf3x+9Xk8TfwOrzxkpNV/+EXS3qx6ccolep1BsAnuNwlCDhh8KVOaeMPPZWTN5lZe3U4HTp0+zfft2AL755hvruvT0dObOnYter7d+zpw5Q1ZWVp2PT1VVLBbLdcs988wzlJSUkJmZSUBAAOPHj69zHTeayWT6XdvfcccdJCYm1thfcnIyoaGhddvBiZ1QXgjq9c/jFUwVsHsRquX3HQPU/W95o5jNN7/b9vf+7YW4FpsOvh49elBYWMjChQvp1asXAO7u7hgMBhYuXIjBYCAoKAgHBwfy8vIoKCjg4sWLPB/uwOPNL48LKjJSo0ur0KTi9vPqli4aHg3UMi1Ui7c9rM6u/gFRLRY0Wh2JiYl0794dgJUrVwKQlZXFpk2bMJvNmEwmqqqqKCwspKysjKNHjzJq1ChrXadPn0ZRFOuPRJ8+fYiLi6NXr144Oztz8uRJjhw5QnR0NF5eXoSFhZGcfPWrECcnJ4YNG2a9x3mpLUOGDMHX15fmzZvzzjvvWNd9//33dO7cGXd3d5o2bcrTTz9tXffll1/Stm1b9Ho9ffr04fDhw9Z1vx7BGhsby4wZMwDYsmULzZo144033sDPz4+xY8diNpt57bXXCA0Nxc3NjU6dOnHmzBmA6x7bwIED2bFjBxcvXgRgw4YNtGvXDj8/P2uZEydOcNddd+Ht7Y2Pjw8xMTEUFBRU/51SltIifhtzt2TSYe4+PGfs5pHFR6gwVofQxTITAz8+RNOX9+D94m4GfnyIswWXr9xP5RTRu1sn3NzcuOeee3jiiSdq/P12795Nz5490ev1tG/fni1btljXXe1v+Wu//vtf2u6jjz4CIC0tjd69e+Ph4YGPjw/Dhw+3lqvt3MXGxvJ///d/9OvXDxcXF7799tsr6r6W8vJypk2bRnBwMB4eHkRERFBeXv2sa2JiIsHBwXh7e/Pqq68SEhJi7WqMj49n6NChjBo1Cnd3dxISEigsLKxxf33GjBk1QviTTz6hdevWeHp6cu+995Kenm5dpygKH3zwAa1atUKv1/PEE080eNezuDXZdPA5OTnRuXNn5s2bR2RkpHV5REQE8+bNIyoqCn9/f/r27cu0adMoKipCVVWcwjpxuuzyv0ClZthToGJWVX4qtpBbBa1cFUpMKkeKLVRZVHQK2Guquz4BdPYO2Dk6kZiYSExMDF5eXmzfvp3s7GwMBgO7du2iSZMmbN68mYceeoihQ4eydu3aOt3jW7x4MQsWLKC4uBhfX1+io6MZOXIkOTk5JCUl8fjjj3Po0KErtistLWXZsmW0bNkSAIvFwsCBA2nfvj2ZmZls3ryZ+fPn89VXXwHw1FNP8dRTT1FUVMSJEycYNmwYAMeOHWPEiBHMnz+f3Nxc+vXrx8CBA6mqqqrT3+X8+fPk5+eTnp7OggULmDdvHsuWLWPdunUUFRXxySef4OzsTGlp6XWPzdHRkQceeMD6SEpiYiKjR4+uUZ+qqjz//PNkZWVx+PBhzpw5Q3x8PGpBJuRWB/SK/Xmse6wNJ17oxI/nykhIya4+R6pKbJcmnIrrzOm4zjjZaXjyv5cDatSiA3RpqnDhwgXi4+NrdFFmZmbSv39/ZsyYQX5+PnPmzGHIkCHk5l4eMfzLv2VwcHCdzt8vvfjii/Tt25eLFy9y9uxZnnzySYA6nbvPPvuMuLg4iouLiYiI4PXXX6/RA/HrzyXTp0/nhx9+sPacvPnmm2g0Gg4dOsTjjz/O0qVLOXfuHIWFhWRmZtZo76pVqxg6dCgFBQXExMTUuL++b98+Nm7caA31VatW8dprr7Fy5Upyc3OJjIxkxIgRNfa3Zs0aUlJSOHDgAMnJydb/7wrbZtPBB9X3+XJycqwjLAEiIyPJycmxjrZMTEykqqqKNm3a4OnpScLBbCq0DtbyzRwhv0rlrTQz3+RaGGbQ4KxVUIHdFy3MO2HmjTQz6WUq/Ztq0Tk4EdormqKiItLT0xk2bBizZs0CqgcvJCcn07lzZxYuXMiQIUNISkpi+/btdbonBdX/td62bVt0Oh0bNmwgJCSEsWPHotPp6NixI0OGDGHFihXW8nPmzEGv1+Pm5saOHTusP84pKSnk5uby0ksvYW9vT4sWLZgwYYI1ROzs7EhLSyMvLw9XV1frlevy5cvp378/0dHR2P1/e3ceFsWZJ3D8WwV9QXOD4bDJEE0wUVHXK2s00RBNIohgWGXUeMUn4+xjdEQzqIkxGI9RkkwYd4MTjY/gxaN5WBO8HZ5V4+o4POvigQkSEhFto4IBIVxNde8fLRWbG8SMCe/nefoPut6uequ7qF+9R/1Ko2HRokVUVVVx8uTJNtVflmUSExPR6XQYDAY2bdrEypUrCQ0NRZIk+vXrh4+PD3v37m113wCmTZtGWloapaWlHDt2jOjoaIflPXv2ZPTo0eh0Ovz8/IiPj+fYsWNQ8h3I9qb73OEBBHro8HbREPmUN2fN9lm9Pq4aXgnzxUXrhJvemaXh3Tn+bRkAV36oIbuonMTwR9BqtQwfPpyoqCh1u9u2bWPs2LGMHTsWWZYZPXo0gwYNYv/+/U3+lpoO5HrVaDQUFhZiNpvR6/Xqcd6W7278+PE888wzyLKMXq9n8eLFlJaWNvsC+8XS5s2bSU5OJigoCCcnJ4YNG4ZOp+Ozzz5j3LhxDB8+HK1Wy4oVKxyGCMDeCxMdHY0sy9y5c8dhfL1bt24sWLBAPf42bNjAkiVLePLJZ6/aWAAADW5JREFUJ3F2dmbp0qXk5OQ4tPoWL16Mp6cnwcHBjBo1yqE3Q+i6uux9fPXWrFnDmjVrHN6bOHGi2noB8PDwICUlhZSUFMD+z/3BiGB+LLlBfw+Z/h7264exjziu281ZYkaTGV1svPXnj7n1xyWYTCZ8fX2ZM2cON2/eJCMjQ912/bjO5cuXMZlMgL07qDX1ZcE+Vnj69GmHK/K6ujqHWYGLFi1i5cqVXLlyhZdeeom8vDzCwsLUE+a9n1UURW0df/rpp7zzzjv06tWLkJAQli9fTmRkJGaz2aF1IssyJpOp0dV9c/z8/NDr9erfRUVFTY7JtWXfwN6Cv3XrFqtWrSIyMhKDweCw/MaNG8yfP58vv/yS8vJyrFYrXl5eUFupju35u2nV8i4aGfMd+/uVtQrxX3zHoa9L+aHK3t1YXqOgWG2Y79TibdDgIlvUz5pMJrWbtrCwkN27d5OZmakut1gsjBo1yqH8/Vi3bh3Lli1jyJAheHl5sXDhQmbNmtWm764j2y4uLqa6urrJ38tsNjus08XFBR8fH4cyDY/d+vH1elarVS1TWFjI/PnzWbhwobrcZrNx7do19fi7t0vbxcWFioqm8+kKXUuXD3wdIcsyUe9tYPeCydTVtC1PZz2N3oXhv0tA1ruya9cuFEVR/zlramooLS3l7Nmz6PV6pk+fTkZGhsPJwNXVlcrKnzLGfP/99422ce9VtMlk4rnnnuPIkSOt1i04OJjk5GSmT59OZGQkJpOJkJAQ8vPzmyz/+OOPs3PnTqxWKxkZGcTGxlJSUkJgYCDnz59Xy9lsNoqKiggKCgLsJ6CG+9C9e/cm61+/DwUFBfTp06fR+23dt6lTp7JixYomx6qWLl2KJEmcP38eb29v9uzZw9y5c8FZD1LLnSIfHjNz6WYVp+aF4e+uJedaBQP/fBabDQLcNNyuslCpOGG8W74+6NXX/9VXX2Xjxo3Nrr/hd9GQq6srAJWVlbi7uwOOx4S/v7+6/hMnTvDCCy/w7LPPtum7a7jt1atXs3r16mbLV1RU4Ovri16vp6CggH79+jksDwgIIC8vT/27qqqKkpKSZrdpMpnU8XXnJh7vZTKZeOutt5gyZUqzdXpQbn37NdfO/oPq8lKctDrc/ALoMXwMGp2+9Q8L/3Rdvquzo0Kfj+TFhHU46w2tF75LY3AhLGoyz85Zwp49e3BycuLixYvk5OSQk5PDV199xYgRI9iyZQvjx49n1apVDl2wAP379+f48eNcuXKFsrKyRq3VhiIjI7l06RJbt27FYrFgsVjIzs52mGxyr9GjRxMYGMgnn3zCkCFDcHNzY+3atVRVVaEoChcuXCA7Oxuwd9XdunULWZbVloMsy0ycOJF9+/aRlZWFxWLhgw8+QKfTMWzYMHUfduzYgaIoHDx40N6t2ILZs2ezbNky8vPzsdlsnDt3jpKSknbt27x58zhy5EijLDwA5eXlGI1GPDw8uHbtGklJSfYFHgFga3k2Y3mNgl4j42lw5nalhRVHfgpsj3rrGdTdSOLfzNTW1nLq1CmH1t3UqVPJzMzk0KFDKIpCdXU1R48e5erVqy1u815+fn4EBQWxbds2FEVh8+bNFBQUqMt3796trs/LywtJkpBlud3HBdgvECoqKpp9gf33nzVrFvHx8ZjNZhRF4dSpU9TU1BAbG0tmZiYnT56ktrbWPo7awmSThuPrVquVgoIC9XiZM2cOa9asITc3F4CysrJG3dydSbFYuHgog09in+avMYPZ9948jry/lEN/+iP/lTCDpH8N4MDqeG4XNZ6EJDxcROC7D4Mnz2HC2i1oXd3QuhibLeesd8FZp2fEnCVEJn6MJEmkpqYyc+ZMgoOD8ff3V19z585l586d5OXlsWDBAoxGo/oCe2CaNGkSYWFhDBw4kMjIyBbr6ObmxuHDh0lPTycwMBB/f38SEhJanCTz5ptvsm7dOurq6ti7dy85OTmEhITg6+vL7NmzKSuzj2EdPHiQ3r17YzQamT9/Punp6RgMBkJDQ9m2bRtvvPEGvr6+ZGZmkpmZiVZr7y5MTk4mMzMTT09Ptm/f3mjMraH4+HgmTpzImDFjcHd357XXXqOqqqpd++bt7U14eHiTLajly5dz5swZPDw8iIiIYMKECfYFfj3B1bfFus0fEUC1xUq35acZ9pdzvBjq5bB86/Qw/v49+Pj48PbbbzNp0iR0Ovv4sMlkUido+Pn5YTKZSEpKavdtCxs3biQpKQkfHx9yc3PVCwywj9MOHToUo9FIVFQUycnJPPbYYx06Ltrq/fffp2/fvgwePBhvb28SEhKwWq307t2b9evXExcXR0BAAEajkW7duqnfR1Majq/HxsZy/fp1AGJiYkhISCAuLg53d3f69OnDgQMH7rv+TSm/9T0p4/+FPUtew3zhf6mrqcZS+SNKbQ111ZXUVJRTW1lB9s4NfBzZj7+nrX8g9RA6h3g6Qyew1FRz8eBnnNiYxO0rBThrdCCBUmfB4O7FsFnx9I+ZhsHDq/WVCQ8V2/m92P47+W6Ksg7Q6JF+vxdJY+8CmzRpEr169SIxMbFDqwsNDeX69evExMSQmprasTo9JCoqKvD09CQ/P5+QkJCfddtZWVm88sor1NTUsH//fodx1YYqim+wIWYwlT8Uq0knWlM/pPHc75d2VpWFTiQCXye7c8NMZWkxNkXB4OGNe4AJWRYN618qm6Ua21+j7Ump28tZR7a2P75j/p2QkBAOHz5MdHQ0p06dYsCAAZ1f2V+AzMxMwsPDsdlsLFy4kNOnT3PmzJlWxzL/WayKQkrUAEoK87G284Z6Z72BCetSeWpMzAOqndBR4ozcydwfCcQ/NIyApwbgGfSoCHq/cJJGjzThfXBuvjuuSU4a8H2MGwHDGTlyJEajkXnz5pGSktJlgx7Y770LDAwkMDCQ/Px80tPTH3jQGzlyJF5eXh3qxs0/fpCy60XtDnoAR6/9yLhJUxqNYxYXF6PVarlw4QJbtmxBkiQWLFjgUObzzz9HkiRmzJjR7u0KrRNnZUFohRTYBylmHWgMrc7yBOxB8pFeSLEfERUdQ1FREZWVlVy6dImZM2c++Ao/xDZt2kRpaSllZWVkZWURGhr6QLdXnxJQkiS++OKLdn/+fzYlUVvZdGvfZrO1ODknzF3icmkVJ/dlOLyfnp5O37591VnKPXr0YNeuXQ7Zd1JTU3niiSfaXV+hbUTgE4Q2kIIHIk39FEJfACdt0y1AjcE+GeaZ15EmrkfSuf78FRUc1KcEnDFjhjomajabHSaNubi4qK3Od999V00p98PV78g9k01iXh3WuwFuy5U6sm4pbC6sY3W+wg8WKK6xsbVIYW1+Hf/xbR25d+/xdNdI/MZF4qP33mlUp3uzB/n7+9O3b181q8zt27c5efKkQ7IDoXOJ+/gEoY0k72CkiHewVf8B24X9UPgPqLoDzlpw64bUJxKCBz6041VdUVpaGvHx8QwdOpSnn35aTQl4743sU6ZMaXIm7fXc/0N2anyKPHfHxpTuTvhqodYKKZcVRvrKTOkuc6MGtl5V6KaT8NNJ9POQOHrukvrZvLw8cnJy2Ldvn8M667MLRUREkJ6ezvjx41uc7SrcH9HiE4R2kvTuyIPikF/5EHnqJuS4j5Ej3kV6dJAIeg+REydOqCkBBw4cSI8ePdixY4dDmbVr1/L111+zefPmRp+vrijD1kRA7O9hf7yYLEl886MNTw0M8JCRJYkAvcSTRonccnsL8UmjRHltnZquLy0tjZdffhk/Pz+HdcbExHD06FHKysqazCcrdC4R+ARB+FVKTU1lzJgx+Pra78WcPHmywy0gBw4cIDk5mT179jRKYwfgrNUjNTE5zd35p4ubMgtcrYI/5depr/N3bFTU2QOfRpbo62NPRm+z2di+fXuTQc1gMBAREcHKlSspKSlRnxYjPBiiq1MQhF+dqqqq+04J6P5IEOV1jSev3Numd9fAb1wkXjU5NVuXEY93Z8uuXUyYMIHy8nLGjRvXZLlp06bx/PPPs3z58g7ssdAeosUnCMKvTmekBPTo2Ycvb7b8KK0njBIltTbOlllRbPZHk12rsnHr7gOnNS6u/PaNN/H09OT1118nLi5OzWDUUH3u1PpHRwkPjgh8giD86nRGSsDBQ4Yw9uWxLW5HJ0tMNTmRW27jwwKFD75R+FuxFaW+oWi10S9qMtOmTaOwsLDFsTtJkggPD8fb27uzvgahGSJziyAIQjMqSm7yUXhP6qrbn7LOSaujf8x0xiX+5wOomXA/RItPEAShGUafbkSv+bRdT2EBkJ01eJlCeDFh3QOqmXA/ROATBEFoQZ+X/42xb3/U5uDnpNPj/WhPZqRloXURSQweRqKrUxAEoQ2+O32MI0kJ3My/iFJnwaY45u+sfzTZgNiZhP/hPRH0HmIi8AmCILTDzW8ucjptPZezj1NTcQcnjRY3vwAG/fZ39H4pFk07u0WFn58IfIIgCEKXIsb4BEEQhC5FBD5BEAShSxGBTxAEQehSROATBEEQuhQR+ARBEIQuRQQ+QRAEoUsRgU8QBEHoUkTgEwRBELoUEfgEQRCELkUEPkEQBKFL+X+k+akvDQNoYwAAAABJRU5ErkJggg==\n"
     },
     "metadata": {}
    }
   ],
   "source": [
    "network = model.create_network(ctf.nodes)\n",
    "env = model.Environment(network=network, vulnerability_library=dict([]),identifiers=ctf.ENV_IDENTIFIERS)\n",
    "env.plot_environment_graph()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Solution to the CTF\n",
    "\n",
    "This is the list of actions taken to capture 7 of the 8 flags from the CTF game.\n",
    "\n",
    "| Source      | Action | Result |\n",
    "|------------ | ------ | ------ |\n",
    "| WEBSITE     | page content has a link to github       | Discover Github project |\n",
    "| GITHUB      | navigate github history                 | **FLAG** Some secure access token (SAS) leaked in a reverted git commit (`CredScan`) |\n",
    "| AZURESTORAGE| access blob using SAS token             | |\n",
    "| WEBSITE     | view source HTML                        | Find URL to hidden .txt file on the website, extract directory path from it |\n",
    "|             | navigate to parent URL and find 3 files | **FLAG** Discover browseable web directory |\n",
    "|             | - readme.txt file                       | Discover secret data (the flag) | \n",
    "|             | - getting-started.txt                   | Discover MYSQL credentials | \n",
    "|             | - deprecation-checklist.txt             | Discover URL to external sharepoint website | \n",
    "| SHAREPOINT  | Navigate to sharepoint site             | **FLAG** Finding AD Service Principal Credentials on Sharepoint | \n",
    "| CLIENT-AZURE| `az resource` with creds from sharepoint| Obtain secrets hidden in azure managed resources |\n",
    "|             |                                         | Get AzureVM info, including public IP address |\n",
    "| CLIENT      | `ssh IP`                                | Failed attempt: internet incoming traffic blocked on the VM by NSG |\n",
    "| CLIENT      | SSH into WEBSITE with  mysql creds      | **FLAG** Shared credentials with database user|\n",
    "|             |                                         |**FLAG** Login using insecure SSH user/password|\n",
    "| WEBSITE/SSH | `history`                               |**FLAG**  Stealing credentials for the monitoring user|\n",
    "|             | `sudo -u monitor`                        | Failed! monitor not sudoable. message about being reported!\n",
    "| CLIENT      | SSH into WEBSITE with 'monitor creds     | Failed! password authentication disabled! looking for private key|\n",
    "| CLIENT      | SSH into WEBSITE as 'web'               | |\n",
    "|             | `su -u monitor` using password           |**FLAG**  User escalation by stealing credentials from bash history|\n",
    "|             | `cat ~/azurecreds.txt`                  | Get user credentials to Azure\n",
    "| CLIENT      | `az resource` with monitor's creds       | Steal more secrets\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "output_type": "display_data",
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [],
         "y": []
        }
       ],
       "layout": {
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": "<div>\n        \n        \n            <div id=\"b0447e42-e13f-48d1-8bf1-0d152033119a\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n            <script type=\"text/javascript\">\n                require([\"plotly\"], function(Plotly) {\n                    window.PLOTLYENV=window.PLOTLYENV || {};\n                    \n                if (document.getElementById(\"b0447e42-e13f-48d1-8bf1-0d152033119a\")) {\n                    Plotly.newPlot(\n                        'b0447e42-e13f-48d1-8bf1-0d152033119a',\n                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0], \"y\": [0.0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [], \"y\": []}],\n                        {\"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n                        {\"responsive\": true}\n                    ).then(function(){\n                            \nvar gd = document.getElementById('b0447e42-e13f-48d1-8bf1-0d152033119a');\nvar x = new MutationObserver(function (mutations, observer) {{\n        var display = window.getComputedStyle(gd).display;\n        if (!display || display === 'none') {{\n            console.log([gd, 'removed!']);\n            Plotly.purge(gd);\n            observer.disconnect();\n        }}\n}});\n\n// Listen for the removal of the full notebook cells\nvar notebookContainer = gd.closest('#notebook-container');\nif (notebookContainer) {{\n    x.observe(notebookContainer, {childList: true});\n}}\n\n// Listen for the clearing of the current output cell\nvar outputEl = gd.closest('.output');\nif (outputEl) {{\n    x.observe(outputEl, {childList: true});\n}}\n\n                        })\n                };\n                });\n            </script>\n        </div>"
     },
     "metadata": {}
    }
   ],
   "source": [
    "c2 = commandcontrol.CommandControl(env)\n",
    "dbg = commandcontrol.EnvironmentDebugging(c2)\n",
    "\n",
    "# 1 - Start from client\n",
    "dbg.plot_discovered_network()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "output_type": "display_data",
     "data": {
      "text/plain": "       id status properties        local_attacks remote_attacks\n0  client  owned         []  [SearchEdgeHistory]             []",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>id</th>\n      <th>status</th>\n      <th>properties</th>\n      <th>local_attacks</th>\n      <th>remote_attacks</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>client</td>\n      <td>owned</td>\n      <td>[]</td>\n      <td>[SearchEdgeHistory]</td>\n      <td>[]</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "metadata": {}
    }
   ],
   "source": [
    "c2.print_all_attacks()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "output_type": "stream",
     "name": "stdout",
     "text": "INFO: discovered node: Website\nINFO: GOT REWARD: Web browser history revealed website URL of interest\n"
    },
    {
     "output_type": "display_data",
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "Website"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          1
         ],
         "y": [
          0
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 1,
          "xref": "x",
          "y": 0,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": "<div>\n        \n        \n            <div id=\"c193ad3d-4c2d-4d97-a329-e377d22ca5ee\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n            <script type=\"text/javascript\">\n                require([\"plotly\"], function(Plotly) {\n                    window.PLOTLYENV=window.PLOTLYENV || {};\n                    \n                if (document.getElementById(\"c193ad3d-4c2d-4d97-a329-e377d22ca5ee\")) {\n                    Plotly.newPlot(\n                        'c193ad3d-4c2d-4d97-a329-e377d22ca5ee',\n                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0], \"y\": [0.0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [1.0], \"y\": [0.0]}],\n                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 1.0, \"xref\": \"x\", \"y\": 0.0, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n                        {\"responsive\": true}\n                    ).then(function(){\n                            \nvar gd = document.getElementById('c193ad3d-4c2d-4d97-a329-e377d22ca5ee');\nvar x = new MutationObserver(function (mutations, observer) {{\n        var display = window.getComputedStyle(gd).display;\n        if (!display || display === 'none') {{\n            console.log([gd, 'removed!']);\n            Plotly.purge(gd);\n            observer.disconnect();\n        }}\n}});\n\n// Listen for the removal of the full notebook cells\nvar notebookContainer = gd.closest('#notebook-container');\nif (notebookContainer) {{\n    x.observe(notebookContainer, {childList: true});\n}}\n\n// Listen for the clearing of the current output cell\nvar outputEl = gd.closest('.output');\nif (outputEl) {{\n    x.observe(outputEl, {childList: true});\n}}\n\n                        })\n                };\n                });\n            </script>\n        </div>"
     },
     "metadata": {}
    }
   ],
   "source": [
    "outcome = c2.run_attack('client', 'SearchEdgeHistory')\n",
    "dbg.plot_discovered_network()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "output_type": "display_data",
     "data": {
      "text/plain": "        id      status properties        local_attacks  \\\n0   client       owned         []  [SearchEdgeHistory]   \n1  Website  discovered        NaN                 None   \n\n                      remote_attacks  \n0                                 []  \n1  [ScanPageContent, ScanPageSource]  ",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>id</th>\n      <th>status</th>\n      <th>properties</th>\n      <th>local_attacks</th>\n      <th>remote_attacks</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>client</td>\n      <td>owned</td>\n      <td>[]</td>\n      <td>[SearchEdgeHistory]</td>\n      <td>[]</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>Website</td>\n      <td>discovered</td>\n      <td>NaN</td>\n      <td>None</td>\n      <td>[ScanPageContent, ScanPageSource]</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "metadata": {}
    }
   ],
   "source": [
    "c2.print_all_attacks()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "scrolled": false,
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO: discovered node: GitHubProject\n",
      "INFO: GOT REWARD: WEBSITE page content has a link to github -> Github project discovered!\n"
     ]
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "Website",
          "GitHubProject"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0.5,
          -0.5
         ],
         "y": [
          2.1855694143368964e-8,
          -2.1855694143368964e-8
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 2.1855694143368964e-8,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 2.1855694143368964e-8,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.5,
          "xref": "x",
          "y": -2.1855694143368964e-8,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": [
       "<div>\n",
       "        \n",
       "        \n",
       "            <div id=\"c4973933-d308-4112-8f9a-0bbec84fd665\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n",
       "            <script type=\"text/javascript\">\n",
       "                require([\"plotly\"], function(Plotly) {\n",
       "                    window.PLOTLYENV=window.PLOTLYENV || {};\n",
       "                    \n",
       "                if (document.getElementById(\"c4973933-d308-4112-8f9a-0bbec84fd665\")) {\n",
       "                    Plotly.newPlot(\n",
       "                        'c4973933-d308-4112-8f9a-0bbec84fd665',\n",
       "                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0], \"y\": [0.0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.5, -0.5], \"y\": [2.1855694143368964e-08, -2.1855694143368964e-08]}],\n",
       "                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 2.1855694143368964e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 2.1855694143368964e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -2.1855694143368964e-08, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n",
       "                        {\"responsive\": true}\n",
       "                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('c4973933-d308-4112-8f9a-0bbec84fd665');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })\n",
       "                };\n",
       "                });\n",
       "            </script>\n",
       "        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 2\n",
    "github = c2.run_remote_attack('client', 'Website', 'ScanPageContent')\n",
    "dbg.plot_discovered_network()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "scrolled": false,
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO: discovered node: AzureStorage\n",
      "INFO: discovered credential: CachedCredential(node='AzureStorage', port='HTTPS', credential='SASTOKEN1')\n",
      "INFO: GOT REWARD: CredScan success: Some secure access token (SAS) was leaked in a reverted git commit\n"
     ]
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "Website",
          "GitHubProject",
          "AzureStorage"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0.5,
          -0.2500000298023224,
          -0.24999995529651642
         ],
         "y": [
          9.934107758624577e-9,
          0.4330126941204071,
          -0.4330127239227295
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 9.934107758624577e-9,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.2500000298023224,
          "xref": "x",
          "y": 0.4330126941204071,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.2500000298023224,
          "axref": "x",
          "ay": 0.4330126941204071,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.24999995529651642,
          "xref": "x",
          "y": -0.4330127239227295,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 9.934107758624577e-9,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.2500000298023224,
          "xref": "x",
          "y": 0.4330126941204071,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": [
       "<div>\n",
       "        \n",
       "        \n",
       "            <div id=\"d390e1e2-f9f8-4863-9aff-f0e78e46e538\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n",
       "            <script type=\"text/javascript\">\n",
       "                require([\"plotly\"], function(Plotly) {\n",
       "                    window.PLOTLYENV=window.PLOTLYENV || {};\n",
       "                    \n",
       "                if (document.getElementById(\"d390e1e2-f9f8-4863-9aff-f0e78e46e538\")) {\n",
       "                    Plotly.newPlot(\n",
       "                        'd390e1e2-f9f8-4863-9aff-f0e78e46e538',\n",
       "                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0], \"y\": [0.0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\", \"AzureStorage\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.5, -0.2500000298023224, -0.24999995529651642], \"y\": [9.934107758624577e-09, 0.4330126941204071, -0.4330127239227295]}],\n",
       "                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 9.934107758624577e-09, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.2500000298023224, \"xref\": \"x\", \"y\": 0.4330126941204071, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.2500000298023224, \"axref\": \"x\", \"ay\": 0.4330126941204071, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 9.934107758624577e-09, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.2500000298023224, \"xref\": \"x\", \"y\": 0.4330126941204071, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n",
       "                        {\"responsive\": true}\n",
       "                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('d390e1e2-f9f8-4863-9aff-f0e78e46e538');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })\n",
       "                };\n",
       "                });\n",
       "            </script>\n",
       "        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 3\n",
    "leakedSasUrl = c2.run_remote_attack('client', 'GitHubProject',  'CredScanGitHistory')\n",
    "dbg.plot_discovered_network()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "scrolled": false,
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO: Infected node 'AzureStorage' from 'client' via HTTPS with credential 'SASTOKEN1'\n"
     ]
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client",
          "AzureStorage"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0,
          -0.24999995529651642
         ],
         "y": [
          0,
          -0.4330127239227295
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "Website",
          "GitHubProject"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0.5,
          -0.2500000298023224
         ],
         "y": [
          9.934107758624577e-9,
          0.4330126941204071
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 9.934107758624577e-9,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.2500000298023224,
          "xref": "x",
          "y": 0.4330126941204071,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.24999995529651642,
          "xref": "x",
          "y": -0.4330127239227295,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.2500000298023224,
          "axref": "x",
          "ay": 0.4330126941204071,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.24999995529651642,
          "xref": "x",
          "y": -0.4330127239227295,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 9.934107758624577e-9,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.2500000298023224,
          "xref": "x",
          "y": 0.4330126941204071,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": [
       "<div>\n",
       "        \n",
       "        \n",
       "            <div id=\"42341ea1-2e46-4ce5-980d-e23ccda775ef\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n",
       "            <script type=\"text/javascript\">\n",
       "                require([\"plotly\"], function(Plotly) {\n",
       "                    window.PLOTLYENV=window.PLOTLYENV || {};\n",
       "                    \n",
       "                if (document.getElementById(\"42341ea1-2e46-4ce5-980d-e23ccda775ef\")) {\n",
       "                    Plotly.newPlot(\n",
       "                        '42341ea1-2e46-4ce5-980d-e23ccda775ef',\n",
       "                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"AzureStorage\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, -0.24999995529651642], \"y\": [0.0, -0.4330127239227295]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.5, -0.2500000298023224], \"y\": [9.934107758624577e-09, 0.4330126941204071]}],\n",
       "                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 9.934107758624577e-09, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.2500000298023224, \"xref\": \"x\", \"y\": 0.4330126941204071, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.2500000298023224, \"axref\": \"x\", \"ay\": 0.4330126941204071, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 9.934107758624577e-09, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.2500000298023224, \"xref\": \"x\", \"y\": 0.4330126941204071, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n",
       "                        {\"responsive\": true}\n",
       "                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('42341ea1-2e46-4ce5-980d-e23ccda775ef');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })\n",
       "                };\n",
       "                });\n",
       "            </script>\n",
       "        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "True"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 4\n",
    "blobwithflag = c2.connect_and_infect('client', 'AzureStorage', 'HTTPS', 'SASTOKEN1')\n",
    "dbg.plot_discovered_network()\n",
    "blobwithflag"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "scrolled": false,
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO: discovered node: Website.Directory\n",
      "INFO: GOT REWARD: Viewing the web page source reveals a URL to a .txt file and directory on the website\n"
     ]
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client",
          "AzureStorage"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0,
          -0.5
         ],
         "y": [
          0,
          -3.62608076898141e-8
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "Website",
          "GitHubProject",
          "Website.Directory"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0.5,
          -1.5895723848302623e-8,
          1.1922410614317869e-8
         ],
         "y": [
          7.450580596923828e-9,
          0.5,
          -0.5
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 7.450580596923828e-9,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -1.5895723848302623e-8,
          "xref": "x",
          "y": 0.5,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 7.450580596923828e-9,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 1.1922410614317869e-8,
          "xref": "x",
          "y": -0.5,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -1.5895723848302623e-8,
          "axref": "x",
          "ay": 0.5,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.5,
          "xref": "x",
          "y": -3.62608076898141e-8,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 7.450580596923828e-9,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -1.5895723848302623e-8,
          "xref": "x",
          "y": 0.5,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.5,
          "xref": "x",
          "y": -3.62608076898141e-8,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": [
       "<div>\n",
       "        \n",
       "        \n",
       "            <div id=\"5bf356cf-5f61-46ad-9f3e-acb79c12b622\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n",
       "            <script type=\"text/javascript\">\n",
       "                require([\"plotly\"], function(Plotly) {\n",
       "                    window.PLOTLYENV=window.PLOTLYENV || {};\n",
       "                    \n",
       "                if (document.getElementById(\"5bf356cf-5f61-46ad-9f3e-acb79c12b622\")) {\n",
       "                    Plotly.newPlot(\n",
       "                        '5bf356cf-5f61-46ad-9f3e-acb79c12b622',\n",
       "                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"AzureStorage\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, -0.5], \"y\": [0.0, -3.62608076898141e-08]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\", \"Website.Directory\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.5, -1.5895723848302623e-08, 1.1922410614317869e-08], \"y\": [7.450580596923828e-09, 0.5, -0.5]}],\n",
       "                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 7.450580596923828e-09, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -1.5895723848302623e-08, \"xref\": \"x\", \"y\": 0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 7.450580596923828e-09, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 1.1922410614317869e-08, \"xref\": \"x\", \"y\": -0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -1.5895723848302623e-08, \"axref\": \"x\", \"ay\": 0.5, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -3.62608076898141e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 7.450580596923828e-09, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -1.5895723848302623e-08, \"xref\": \"x\", \"y\": 0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -3.62608076898141e-08, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n",
       "                        {\"responsive\": true}\n",
       "                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('5bf356cf-5f61-46ad-9f3e-acb79c12b622');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })\n",
       "                };\n",
       "                });\n",
       "            </script>\n",
       "        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 5\n",
    "browsableDirectory = c2.run_remote_attack('client', 'Website', 'ScanPageSource')\n",
    "dbg.plot_discovered_network()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "scrolled": false,
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO: discovered node: Website\n",
      "INFO: discovered credential: CachedCredential(node='Website', port='MySQL', credential='ReusedMySqlCred-web')\n",
      "INFO: GOT REWARD: Discover browseable web directory: Navigating to parent URL revealed file `readme.txt`with secret data (aflag); and `getting-started.txt` with MYSQL credentials\n",
      "INFO: discovered node: Sharepoint\n",
      "INFO: GOT REWARD: Navigating to parent URL revealed file `deprecation-checklist.txt` containinga URL to an external sharepoint website\n"
     ]
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client",
          "AzureStorage"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0,
          -0.404508501291275
         ],
         "y": [
          0,
          0.29389262199401855
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "Website",
          "GitHubProject",
          "Website.Directory",
          "Sharepoint"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0.5,
          0.15450847148895264,
          -0.40450847148895264,
          0.1545085459947586
         ],
         "y": [
          5.9604645663569045e-9,
          0.4755282700061798,
          -0.29389265179634094,
          -0.4755282402038574
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 5.9604645663569045e-9,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.15450847148895264,
          "xref": "x",
          "y": 0.4755282700061798,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 5.9604645663569045e-9,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.40450847148895264,
          "xref": "x",
          "y": -0.29389265179634094,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.40450847148895264,
          "axref": "x",
          "ay": -0.29389265179634094,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 5.9604645663569045e-9,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.40450847148895264,
          "axref": "x",
          "ay": -0.29389265179634094,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.1545085459947586,
          "xref": "x",
          "y": -0.4755282402038574,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.15450847148895264,
          "axref": "x",
          "ay": 0.4755282700061798,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.404508501291275,
          "xref": "x",
          "y": 0.29389262199401855,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 5.9604645663569045e-9,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.15450847148895264,
          "xref": "x",
          "y": 0.4755282700061798,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.404508501291275,
          "xref": "x",
          "y": 0.29389262199401855,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.40450847148895264,
          "xref": "x",
          "y": -0.29389265179634094,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": [
       "<div>\n",
       "        \n",
       "        \n",
       "            <div id=\"3c99cda1-cbbe-40a0-bb9b-cd16a10893a5\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n",
       "            <script type=\"text/javascript\">\n",
       "                require([\"plotly\"], function(Plotly) {\n",
       "                    window.PLOTLYENV=window.PLOTLYENV || {};\n",
       "                    \n",
       "                if (document.getElementById(\"3c99cda1-cbbe-40a0-bb9b-cd16a10893a5\")) {\n",
       "                    Plotly.newPlot(\n",
       "                        '3c99cda1-cbbe-40a0-bb9b-cd16a10893a5',\n",
       "                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"AzureStorage\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, -0.404508501291275], \"y\": [0.0, 0.29389262199401855]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\", \"Website.Directory\", \"Sharepoint\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.5, 0.15450847148895264, -0.40450847148895264, 0.1545085459947586], \"y\": [5.9604645663569045e-09, 0.4755282700061798, -0.29389265179634094, -0.4755282402038574]}],\n",
       "                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 5.9604645663569045e-09, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.15450847148895264, \"xref\": \"x\", \"y\": 0.4755282700061798, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 5.9604645663569045e-09, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.40450847148895264, \"xref\": \"x\", \"y\": -0.29389265179634094, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.40450847148895264, \"axref\": \"x\", \"ay\": -0.29389265179634094, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 5.9604645663569045e-09, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.40450847148895264, \"axref\": \"x\", \"ay\": -0.29389265179634094, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.1545085459947586, \"xref\": \"x\", \"y\": -0.4755282402038574, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.15450847148895264, \"axref\": \"x\", \"ay\": 0.4755282700061798, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.404508501291275, \"xref\": \"x\", \"y\": 0.29389262199401855, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 5.9604645663569045e-09, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.15450847148895264, \"xref\": \"x\", \"y\": 0.4755282700061798, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.404508501291275, \"xref\": \"x\", \"y\": 0.29389262199401855, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.40450847148895264, \"xref\": \"x\", \"y\": -0.29389265179634094, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n",
       "                        {\"responsive\": true}\n",
       "                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('3c99cda1-cbbe-40a0-bb9b-cd16a10893a5');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })\n",
       "                };\n",
       "                });\n",
       "            </script>\n",
       "        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 6 \n",
    "outcome_mysqlleak = c2.run_remote_attack('client', 'Website.Directory', 'NavigateWebDirectoryFurther')\n",
    "sharepoint_url = c2.run_remote_attack('client', 'Website.Directory', 'NavigateWebDirectory')\n",
    "dbg.plot_discovered_network()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "scrolled": false,
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO: discovered node: AzureResourceManager\n",
      "INFO: discovered credential: CachedCredential(node='AzureResourceManager', port='HTTPS', credential='ADPrincipalCreds')\n",
      "INFO: GOT REWARD: Navigating to the Sharepoint site revealed  AD Service Principal Credentials\n"
     ]
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client",
          "AzureStorage"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0,
          -0.2500000298023224
         ],
         "y": [
          0,
          0.4330126941204071
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "Website",
          "GitHubProject",
          "Website.Directory",
          "Sharepoint",
          "AzureResourceManager"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0.5,
          0.2499999850988388,
          -0.5,
          -0.24999995529651642,
          0.24999995529651642
         ],
         "y": [
          9.934107758624577e-9,
          0.4330127239227295,
          -3.377727963993493e-8,
          -0.4330127239227295,
          -0.4330127239227295
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 9.934107758624577e-9,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.2499999850988388,
          "xref": "x",
          "y": 0.4330127239227295,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 9.934107758624577e-9,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.5,
          "xref": "x",
          "y": -3.377727963993493e-8,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.5,
          "axref": "x",
          "ay": -3.377727963993493e-8,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 9.934107758624577e-9,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.5,
          "axref": "x",
          "ay": -3.377727963993493e-8,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.24999995529651642,
          "xref": "x",
          "y": -0.4330127239227295,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.2499999850988388,
          "axref": "x",
          "ay": 0.4330127239227295,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.2500000298023224,
          "xref": "x",
          "y": 0.4330126941204071,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.24999995529651642,
          "axref": "x",
          "ay": -0.4330127239227295,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.24999995529651642,
          "xref": "x",
          "y": -0.4330127239227295,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 9.934107758624577e-9,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.2499999850988388,
          "xref": "x",
          "y": 0.4330127239227295,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.2500000298023224,
          "xref": "x",
          "y": 0.4330126941204071,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.5,
          "xref": "x",
          "y": -3.377727963993493e-8,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.24999995529651642,
          "xref": "x",
          "y": -0.4330127239227295,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": [
       "<div>\n",
       "        \n",
       "        \n",
       "            <div id=\"ae43cea7-d3be-43e1-bd97-05af21433af5\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n",
       "            <script type=\"text/javascript\">\n",
       "                require([\"plotly\"], function(Plotly) {\n",
       "                    window.PLOTLYENV=window.PLOTLYENV || {};\n",
       "                    \n",
       "                if (document.getElementById(\"ae43cea7-d3be-43e1-bd97-05af21433af5\")) {\n",
       "                    Plotly.newPlot(\n",
       "                        'ae43cea7-d3be-43e1-bd97-05af21433af5',\n",
       "                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"AzureStorage\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, -0.2500000298023224], \"y\": [0.0, 0.4330126941204071]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureResourceManager\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.5, 0.2499999850988388, -0.5, -0.24999995529651642, 0.24999995529651642], \"y\": [9.934107758624577e-09, 0.4330127239227295, -3.377727963993493e-08, -0.4330127239227295, -0.4330127239227295]}],\n",
       "                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 9.934107758624577e-09, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.2499999850988388, \"xref\": \"x\", \"y\": 0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 9.934107758624577e-09, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -3.377727963993493e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -3.377727963993493e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 9.934107758624577e-09, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -3.377727963993493e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.2499999850988388, \"axref\": \"x\", \"ay\": 0.4330127239227295, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.2500000298023224, \"xref\": \"x\", \"y\": 0.4330126941204071, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.24999995529651642, \"axref\": \"x\", \"ay\": -0.4330127239227295, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 9.934107758624577e-09, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.2499999850988388, \"xref\": \"x\", \"y\": 0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.2500000298023224, \"xref\": \"x\", \"y\": 0.4330126941204071, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -3.377727963993493e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n",
       "                        {\"responsive\": true}\n",
       "                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('ae43cea7-d3be-43e1-bd97-05af21433af5');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })\n",
       "                };\n",
       "                });\n",
       "            </script>\n",
       "        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 7\n",
    "outcome_azure_ad = c2.run_remote_attack('client', 'Sharepoint', 'ScanSharepointParentDirectory')\n",
    "dbg.plot_discovered_network()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "scrolled": false,
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO: Infected node 'AzureResourceManager' from 'client' via HTTPS with credential 'ADPrincipalCreds'\n",
      "INFO: Owned message: FLAG: Shared credentials with database user - Obtained secrets hidden in Azure Managed Resources\n"
     ]
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client",
          "AzureStorage",
          "AzureResourceManager"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0,
          -0.2500000298023224,
          0.24999995529651642
         ],
         "y": [
          0,
          0.4330126941204071,
          -0.4330127239227295
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "Website",
          "GitHubProject",
          "Website.Directory",
          "Sharepoint"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0.5,
          0.2499999850988388,
          -0.5,
          -0.24999995529651642
         ],
         "y": [
          9.934107758624577e-9,
          0.4330127239227295,
          -3.377727963993493e-8,
          -0.4330127239227295
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 9.934107758624577e-9,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.2499999850988388,
          "xref": "x",
          "y": 0.4330127239227295,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 9.934107758624577e-9,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.5,
          "xref": "x",
          "y": -3.377727963993493e-8,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.5,
          "axref": "x",
          "ay": -3.377727963993493e-8,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 9.934107758624577e-9,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.5,
          "axref": "x",
          "ay": -3.377727963993493e-8,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.24999995529651642,
          "xref": "x",
          "y": -0.4330127239227295,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.2499999850988388,
          "axref": "x",
          "ay": 0.4330127239227295,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.2500000298023224,
          "xref": "x",
          "y": 0.4330126941204071,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.24999995529651642,
          "axref": "x",
          "ay": -0.4330127239227295,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.24999995529651642,
          "xref": "x",
          "y": -0.4330127239227295,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 9.934107758624577e-9,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.2499999850988388,
          "xref": "x",
          "y": 0.4330127239227295,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.2500000298023224,
          "xref": "x",
          "y": 0.4330126941204071,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.5,
          "xref": "x",
          "y": -3.377727963993493e-8,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.24999995529651642,
          "xref": "x",
          "y": -0.4330127239227295,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.24999995529651642,
          "xref": "x",
          "y": -0.4330127239227295,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": [
       "<div>\n",
       "        \n",
       "        \n",
       "            <div id=\"ba953157-a287-495d-9b17-6b0280cb24e0\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n",
       "            <script type=\"text/javascript\">\n",
       "                require([\"plotly\"], function(Plotly) {\n",
       "                    window.PLOTLYENV=window.PLOTLYENV || {};\n",
       "                    \n",
       "                if (document.getElementById(\"ba953157-a287-495d-9b17-6b0280cb24e0\")) {\n",
       "                    Plotly.newPlot(\n",
       "                        'ba953157-a287-495d-9b17-6b0280cb24e0',\n",
       "                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"AzureStorage\", \"AzureResourceManager\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, -0.2500000298023224, 0.24999995529651642], \"y\": [0.0, 0.4330126941204071, -0.4330127239227295]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\", \"Website.Directory\", \"Sharepoint\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.5, 0.2499999850988388, -0.5, -0.24999995529651642], \"y\": [9.934107758624577e-09, 0.4330127239227295, -3.377727963993493e-08, -0.4330127239227295]}],\n",
       "                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 9.934107758624577e-09, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.2499999850988388, \"xref\": \"x\", \"y\": 0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 9.934107758624577e-09, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -3.377727963993493e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -3.377727963993493e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 9.934107758624577e-09, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -3.377727963993493e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.2499999850988388, \"axref\": \"x\", \"ay\": 0.4330127239227295, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.2500000298023224, \"xref\": \"x\", \"y\": 0.4330126941204071, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.24999995529651642, \"axref\": \"x\", \"ay\": -0.4330127239227295, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 9.934107758624577e-09, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.2499999850988388, \"xref\": \"x\", \"y\": 0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.2500000298023224, \"xref\": \"x\", \"y\": 0.4330126941204071, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -3.377727963993493e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n",
       "                        {\"responsive\": true}\n",
       "                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('ba953157-a287-495d-9b17-6b0280cb24e0');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })\n",
       "                };\n",
       "                });\n",
       "            </script>\n",
       "        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 8 \n",
    "azureVmInfo = c2.connect_and_infect('client', 'AzureResourceManager', 'HTTPS', 'ADPrincipalCreds')\n",
    "dbg.plot_discovered_network()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO: discovered node: AzureVM\n",
      "INFO: GOT REWARD: Obtained Azure VM and public IP information\n"
     ]
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client",
          "AzureStorage",
          "AzureResourceManager"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0,
          -0.11126045882701874,
          -0.11126048862934113
         ],
         "y": [
          0,
          0.48746395111083984,
          -0.48746395111083984
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "Website",
          "GitHubProject",
          "Website.Directory",
          "Sharepoint",
          "AzureVM"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0.5,
          0.31174489855766296,
          -0.45048442482948303,
          -0.45048442482948303,
          0.3117448091506958
         ],
         "y": [
          0,
          0.39091575145721436,
          0.21694190800189972,
          -0.21694187819957733,
          -0.39091581106185913
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.31174489855766296,
          "xref": "x",
          "y": 0.39091575145721436,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.45048442482948303,
          "xref": "x",
          "y": 0.21694190800189972,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.45048442482948303,
          "axref": "x",
          "ay": 0.21694190800189972,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 0,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.45048442482948303,
          "axref": "x",
          "ay": 0.21694190800189972,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.45048442482948303,
          "xref": "x",
          "y": -0.21694187819957733,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.31174489855766296,
          "axref": "x",
          "ay": 0.39091575145721436,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.11126045882701874,
          "xref": "x",
          "y": 0.48746395111083984,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.45048442482948303,
          "axref": "x",
          "ay": -0.21694187819957733,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.11126048862934113,
          "xref": "x",
          "y": -0.48746395111083984,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.11126048862934113,
          "axref": "x",
          "ay": -0.48746395111083984,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3117448091506958,
          "xref": "x",
          "y": -0.39091581106185913,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 0,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.31174489855766296,
          "xref": "x",
          "y": 0.39091575145721436,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.11126045882701874,
          "xref": "x",
          "y": 0.48746395111083984,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.45048442482948303,
          "xref": "x",
          "y": 0.21694190800189972,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.45048442482948303,
          "xref": "x",
          "y": -0.21694187819957733,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.11126048862934113,
          "xref": "x",
          "y": -0.48746395111083984,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": [
       "<div>\n",
       "        \n",
       "        \n",
       "            <div id=\"4f7d5eab-0e11-4911-8a2e-5aad1b858cb5\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n",
       "            <script type=\"text/javascript\">\n",
       "                require([\"plotly\"], function(Plotly) {\n",
       "                    window.PLOTLYENV=window.PLOTLYENV || {};\n",
       "                    \n",
       "                if (document.getElementById(\"4f7d5eab-0e11-4911-8a2e-5aad1b858cb5\")) {\n",
       "                    Plotly.newPlot(\n",
       "                        '4f7d5eab-0e11-4911-8a2e-5aad1b858cb5',\n",
       "                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"AzureStorage\", \"AzureResourceManager\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, -0.11126045882701874, -0.11126048862934113], \"y\": [0.0, 0.48746395111083984, -0.48746395111083984]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.5, 0.31174489855766296, -0.45048442482948303, -0.45048442482948303, 0.3117448091506958], \"y\": [0.0, 0.39091575145721436, 0.21694190800189972, -0.21694187819957733, -0.39091581106185913]}],\n",
       "                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.31174489855766296, \"xref\": \"x\", \"y\": 0.39091575145721436, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.45048442482948303, \"xref\": \"x\", \"y\": 0.21694190800189972, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.45048442482948303, \"axref\": \"x\", \"ay\": 0.21694190800189972, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 0.0, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.45048442482948303, \"axref\": \"x\", \"ay\": 0.21694190800189972, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.45048442482948303, \"xref\": \"x\", \"y\": -0.21694187819957733, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.31174489855766296, \"axref\": \"x\", \"ay\": 0.39091575145721436, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.11126045882701874, \"xref\": \"x\", \"y\": 0.48746395111083984, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.45048442482948303, \"axref\": \"x\", \"ay\": -0.21694187819957733, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.11126048862934113, \"xref\": \"x\", \"y\": -0.48746395111083984, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.11126048862934113, \"axref\": \"x\", \"ay\": -0.48746395111083984, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3117448091506958, \"xref\": \"x\", \"y\": -0.39091581106185913, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 0.0, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.31174489855766296, \"xref\": \"x\", \"y\": 0.39091575145721436, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.11126045882701874, \"xref\": \"x\", \"y\": 0.48746395111083984, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.45048442482948303, \"xref\": \"x\", \"y\": 0.21694190800189972, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.45048442482948303, \"xref\": \"x\", \"y\": -0.21694187819957733, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.11126048862934113, \"xref\": \"x\", \"y\": -0.48746395111083984, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n",
       "                        {\"responsive\": true}\n",
       "                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('4f7d5eab-0e11-4911-8a2e-5aad1b858cb5');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })\n",
       "                };\n",
       "                });\n",
       "            </script>\n",
       "        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "c2.run_remote_attack('client', 'AzureResourceManager', 'ListAzureResources')\n",
    "dbg.plot_discovered_network()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "scrolled": false,
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO: BLOCKED TRAFFIC: target node 'AzureVM' is blocking outgoing traffic on port 'SSH'\n",
      "Success=False\n"
     ]
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client",
          "AzureStorage",
          "AzureResourceManager"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0,
          -0.11126045882701874,
          -0.11126048862934113
         ],
         "y": [
          0,
          0.48746395111083984,
          -0.48746395111083984
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "Website",
          "GitHubProject",
          "Website.Directory",
          "Sharepoint",
          "AzureVM"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0.5,
          0.31174489855766296,
          -0.45048442482948303,
          -0.45048442482948303,
          0.3117448091506958
         ],
         "y": [
          0,
          0.39091575145721436,
          0.21694190800189972,
          -0.21694187819957733,
          -0.39091581106185913
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.31174489855766296,
          "xref": "x",
          "y": 0.39091575145721436,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.45048442482948303,
          "xref": "x",
          "y": 0.21694190800189972,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.45048442482948303,
          "axref": "x",
          "ay": 0.21694190800189972,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 0,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.45048442482948303,
          "axref": "x",
          "ay": 0.21694190800189972,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.45048442482948303,
          "xref": "x",
          "y": -0.21694187819957733,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.31174489855766296,
          "axref": "x",
          "ay": 0.39091575145721436,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.11126045882701874,
          "xref": "x",
          "y": 0.48746395111083984,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.45048442482948303,
          "axref": "x",
          "ay": -0.21694187819957733,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.11126048862934113,
          "xref": "x",
          "y": -0.48746395111083984,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.11126048862934113,
          "axref": "x",
          "ay": -0.48746395111083984,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3117448091506958,
          "xref": "x",
          "y": -0.39091581106185913,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 0,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.31174489855766296,
          "xref": "x",
          "y": 0.39091575145721436,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.11126045882701874,
          "xref": "x",
          "y": 0.48746395111083984,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.45048442482948303,
          "xref": "x",
          "y": 0.21694190800189972,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.45048442482948303,
          "xref": "x",
          "y": -0.21694187819957733,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.11126048862934113,
          "xref": "x",
          "y": -0.48746395111083984,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": [
       "<div>\n",
       "        \n",
       "        \n",
       "            <div id=\"5a595273-8351-4506-95d1-b3d2f82ea2e5\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n",
       "            <script type=\"text/javascript\">\n",
       "                require([\"plotly\"], function(Plotly) {\n",
       "                    window.PLOTLYENV=window.PLOTLYENV || {};\n",
       "                    \n",
       "                if (document.getElementById(\"5a595273-8351-4506-95d1-b3d2f82ea2e5\")) {\n",
       "                    Plotly.newPlot(\n",
       "                        '5a595273-8351-4506-95d1-b3d2f82ea2e5',\n",
       "                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"AzureStorage\", \"AzureResourceManager\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, -0.11126045882701874, -0.11126048862934113], \"y\": [0.0, 0.48746395111083984, -0.48746395111083984]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.5, 0.31174489855766296, -0.45048442482948303, -0.45048442482948303, 0.3117448091506958], \"y\": [0.0, 0.39091575145721436, 0.21694190800189972, -0.21694187819957733, -0.39091581106185913]}],\n",
       "                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.31174489855766296, \"xref\": \"x\", \"y\": 0.39091575145721436, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.45048442482948303, \"xref\": \"x\", \"y\": 0.21694190800189972, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.45048442482948303, \"axref\": \"x\", \"ay\": 0.21694190800189972, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 0.0, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.45048442482948303, \"axref\": \"x\", \"ay\": 0.21694190800189972, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.45048442482948303, \"xref\": \"x\", \"y\": -0.21694187819957733, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.31174489855766296, \"axref\": \"x\", \"ay\": 0.39091575145721436, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.11126045882701874, \"xref\": \"x\", \"y\": 0.48746395111083984, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.45048442482948303, \"axref\": \"x\", \"ay\": -0.21694187819957733, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.11126048862934113, \"xref\": \"x\", \"y\": -0.48746395111083984, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.11126048862934113, \"axref\": \"x\", \"ay\": -0.48746395111083984, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3117448091506958, \"xref\": \"x\", \"y\": -0.39091581106185913, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 0.0, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.31174489855766296, \"xref\": \"x\", \"y\": 0.39091575145721436, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.11126045882701874, \"xref\": \"x\", \"y\": 0.48746395111083984, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.45048442482948303, \"xref\": \"x\", \"y\": 0.21694190800189972, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.45048442482948303, \"xref\": \"x\", \"y\": -0.21694187819957733, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.11126048862934113, \"xref\": \"x\", \"y\": -0.48746395111083984, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n",
       "                        {\"responsive\": true}\n",
       "                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('5a595273-8351-4506-95d1-b3d2f82ea2e5');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })\n",
       "                };\n",
       "                });\n",
       "            </script>\n",
       "        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 9 - CLIENT: Attempt to SSH into AzureVM from IP retrieved from Azure Resource Manager\n",
    "should_fail = c2.connect_and_infect('client', 'AzureVM', 'SSH', 'ReusedMySqlCred-web')\n",
    "print('Success=' + str(should_fail))\n",
    "dbg.plot_discovered_network()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO: Infected node 'Website' from 'client' via SSH with credential 'ReusedMySqlCred-web'\n",
      "INFO: Owned message: FLAG: Login using insecure SSH user/password\n"
     ]
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client",
          "Website",
          "AzureStorage",
          "AzureResourceManager"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0,
          0.5,
          -0.11126045882701874,
          -0.11126048862934113
         ],
         "y": [
          0,
          0,
          0.48746395111083984,
          -0.48746395111083984
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "GitHubProject",
          "Website.Directory",
          "Sharepoint",
          "AzureVM"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0.31174489855766296,
          -0.45048442482948303,
          -0.45048442482948303,
          0.3117448091506958
         ],
         "y": [
          0.39091575145721436,
          0.21694190800189972,
          -0.21694187819957733,
          -0.39091581106185913
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.31174489855766296,
          "xref": "x",
          "y": 0.39091575145721436,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.45048442482948303,
          "xref": "x",
          "y": 0.21694190800189972,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.45048442482948303,
          "axref": "x",
          "ay": 0.21694190800189972,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 0,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.45048442482948303,
          "axref": "x",
          "ay": 0.21694190800189972,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.45048442482948303,
          "xref": "x",
          "y": -0.21694187819957733,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.31174489855766296,
          "axref": "x",
          "ay": 0.39091575145721436,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.11126045882701874,
          "xref": "x",
          "y": 0.48746395111083984,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.45048442482948303,
          "axref": "x",
          "ay": -0.21694187819957733,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.11126048862934113,
          "xref": "x",
          "y": -0.48746395111083984,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.11126048862934113,
          "axref": "x",
          "ay": -0.48746395111083984,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3117448091506958,
          "xref": "x",
          "y": -0.39091581106185913,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 0,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.31174489855766296,
          "xref": "x",
          "y": 0.39091575145721436,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.11126045882701874,
          "xref": "x",
          "y": 0.48746395111083984,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.45048442482948303,
          "xref": "x",
          "y": 0.21694190800189972,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.45048442482948303,
          "xref": "x",
          "y": -0.21694187819957733,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.11126048862934113,
          "xref": "x",
          "y": -0.48746395111083984,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": [
       "<div>\n",
       "        \n",
       "        \n",
       "            <div id=\"7992af25-7f1c-4dce-a590-113598232a4e\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n",
       "            <script type=\"text/javascript\">\n",
       "                require([\"plotly\"], function(Plotly) {\n",
       "                    window.PLOTLYENV=window.PLOTLYENV || {};\n",
       "                    \n",
       "                if (document.getElementById(\"7992af25-7f1c-4dce-a590-113598232a4e\")) {\n",
       "                    Plotly.newPlot(\n",
       "                        '7992af25-7f1c-4dce-a590-113598232a4e',\n",
       "                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"Website\", \"AzureStorage\", \"AzureResourceManager\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, 0.5, -0.11126045882701874, -0.11126048862934113], \"y\": [0.0, 0.0, 0.48746395111083984, -0.48746395111083984]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.31174489855766296, -0.45048442482948303, -0.45048442482948303, 0.3117448091506958], \"y\": [0.39091575145721436, 0.21694190800189972, -0.21694187819957733, -0.39091581106185913]}],\n",
       "                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.31174489855766296, \"xref\": \"x\", \"y\": 0.39091575145721436, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.45048442482948303, \"xref\": \"x\", \"y\": 0.21694190800189972, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.45048442482948303, \"axref\": \"x\", \"ay\": 0.21694190800189972, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 0.0, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.45048442482948303, \"axref\": \"x\", \"ay\": 0.21694190800189972, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.45048442482948303, \"xref\": \"x\", \"y\": -0.21694187819957733, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.31174489855766296, \"axref\": \"x\", \"ay\": 0.39091575145721436, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.11126045882701874, \"xref\": \"x\", \"y\": 0.48746395111083984, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.45048442482948303, \"axref\": \"x\", \"ay\": -0.21694187819957733, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.11126048862934113, \"xref\": \"x\", \"y\": -0.48746395111083984, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.11126048862934113, \"axref\": \"x\", \"ay\": -0.48746395111083984, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3117448091506958, \"xref\": \"x\", \"y\": -0.39091581106185913, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 0.0, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.31174489855766296, \"xref\": \"x\", \"y\": 0.39091575145721436, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.11126045882701874, \"xref\": \"x\", \"y\": 0.48746395111083984, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.45048442482948303, \"xref\": \"x\", \"y\": 0.21694190800189972, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.45048442482948303, \"xref\": \"x\", \"y\": -0.21694187819957733, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.11126048862934113, \"xref\": \"x\", \"y\": -0.48746395111083984, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n",
       "                        {\"responsive\": true}\n",
       "                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('7992af25-7f1c-4dce-a590-113598232a4e');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })\n",
       "                };\n",
       "                });\n",
       "            </script>\n",
       "        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 10\n",
    "owned = c2.connect_and_infect('client', 'Website', 'SSH', 'ReusedMySqlCred-web')\n",
    "dbg.plot_discovered_network()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO: discovered node: Website[user=monitor]\n",
      "INFO: discovered credential: CachedCredential(node='Website[user=monitor]', port='SSH', credential='monitorBashCreds')\n",
      "INFO: GOT REWARD: FLAG: SSH history revealed credentials for the monitoring user (monitor)\n"
     ]
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client",
          "Website",
          "AzureStorage",
          "AzureResourceManager"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0,
          0.5,
          -6.954532949521308e-9,
          -0.3535534143447876
         ],
         "y": [
          0,
          0,
          0.5,
          -0.3535533547401428
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "GitHubProject",
          "Website.Directory",
          "Sharepoint",
          "AzureVM",
          "Website[user=monitor]"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0.3535534143447876,
          -0.3535533547401428,
          -0.5,
          2.0863602401277603e-8,
          0.3535533547401428
         ],
         "y": [
          0.3535533845424652,
          0.3535533845424652,
          -4.371138828673793e-8,
          -0.5,
          -0.35355344414711
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3535534143447876,
          "xref": "x",
          "y": 0.3535533845424652,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.3535533547401428,
          "xref": "x",
          "y": 0.3535533845424652,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3535533547401428,
          "xref": "x",
          "y": -0.35355344414711,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.3535533547401428,
          "axref": "x",
          "ay": 0.3535533845424652,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 0,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.3535533547401428,
          "axref": "x",
          "ay": 0.3535533845424652,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.5,
          "xref": "x",
          "y": -4.371138828673793e-8,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.3535534143447876,
          "axref": "x",
          "ay": 0.3535533845424652,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -6.954532949521308e-9,
          "xref": "x",
          "y": 0.5,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.5,
          "axref": "x",
          "ay": -4.371138828673793e-8,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.3535534143447876,
          "xref": "x",
          "y": -0.3535533547401428,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.3535534143447876,
          "axref": "x",
          "ay": -0.3535533547401428,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 2.0863602401277603e-8,
          "xref": "x",
          "y": -0.5,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 0,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3535534143447876,
          "xref": "x",
          "y": 0.3535533845424652,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -6.954532949521308e-9,
          "xref": "x",
          "y": 0.5,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.3535533547401428,
          "xref": "x",
          "y": 0.3535533845424652,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.5,
          "xref": "x",
          "y": -4.371138828673793e-8,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.3535534143447876,
          "xref": "x",
          "y": -0.3535533547401428,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": [
       "<div>\n",
       "        \n",
       "        \n",
       "            <div id=\"59c5450c-276f-436a-98a9-37ad761f1cf1\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n",
       "            <script type=\"text/javascript\">\n",
       "                require([\"plotly\"], function(Plotly) {\n",
       "                    window.PLOTLYENV=window.PLOTLYENV || {};\n",
       "                    \n",
       "                if (document.getElementById(\"59c5450c-276f-436a-98a9-37ad761f1cf1\")) {\n",
       "                    Plotly.newPlot(\n",
       "                        '59c5450c-276f-436a-98a9-37ad761f1cf1',\n",
       "                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"Website\", \"AzureStorage\", \"AzureResourceManager\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, 0.5, -6.954532949521308e-09, -0.3535534143447876], \"y\": [0.0, 0.0, 0.5, -0.3535533547401428]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\", \"Website[user=monitor]\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.3535534143447876, -0.3535533547401428, -0.5, 2.0863602401277603e-08, 0.3535533547401428], \"y\": [0.3535533845424652, 0.3535533845424652, -4.371138828673793e-08, -0.5, -0.35355344414711]}],\n",
       "                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535534143447876, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535533547401428, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535533547401428, \"xref\": \"x\", \"y\": -0.35355344414711, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3535533547401428, \"axref\": \"x\", \"ay\": 0.3535533845424652, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 0.0, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3535533547401428, \"axref\": \"x\", \"ay\": 0.3535533845424652, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.3535534143447876, \"axref\": \"x\", \"ay\": 0.3535533845424652, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -6.954532949521308e-09, \"xref\": \"x\", \"y\": 0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535534143447876, \"xref\": \"x\", \"y\": -0.3535533547401428, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3535534143447876, \"axref\": \"x\", \"ay\": -0.3535533547401428, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 2.0863602401277603e-08, \"xref\": \"x\", \"y\": -0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 0.0, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535534143447876, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -6.954532949521308e-09, \"xref\": \"x\", \"y\": 0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535533547401428, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535534143447876, \"xref\": \"x\", \"y\": -0.3535533547401428, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n",
       "                        {\"responsive\": true}\n",
       "                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('59c5450c-276f-436a-98a9-37ad761f1cf1');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })\n",
       "                };\n",
       "                });\n",
       "            </script>\n",
       "        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 11\n",
    "outcome = c2.run_attack('Website', 'CredScanBashHistory')\n",
    "dbg.plot_discovered_network()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "id                    status      local_attacks            remote_attacks\n",
      "--------------------  ----------  -----------------------  -------------------------------------------------------\n",
      "client                owned       ['SearchEdgeHistory']    []\n",
      "Website               owned       ['CredScanBashHistory']  ['ScanPageSource', 'ScanPageContent']\n",
      "AzureStorage          owned       []                       ['AccessDataWithSASToken']\n",
      "AzureResourceManager  owned       []                       ['ListAzureResources']\n",
      "GitHubProject         discovered                           ['CredScanGitHistory']\n",
      "Website.Directory     discovered                           ['NavigateWebDirectory', 'NavigateWebDirectoryFurther']\n",
      "Sharepoint            discovered                           ['ScanSharepointParentDirectory']\n",
      "AzureVM               discovered                           []\n",
      "Website[user=monitor]  discovered                           []\n"
     ]
    }
   ],
   "source": [
    "c2.print_all_attacks()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO: BLOCKED TRAFFIC: target node 'Website[user=monitor]' is blocking outgoing traffic on port 'sudo'\n"
     ]
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client",
          "Website",
          "AzureStorage",
          "AzureResourceManager"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0,
          0.5,
          -6.954532949521308e-9,
          -0.3535534143447876
         ],
         "y": [
          0,
          0,
          0.5,
          -0.3535533547401428
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "GitHubProject",
          "Website.Directory",
          "Sharepoint",
          "AzureVM",
          "Website[user=monitor]"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0.3535534143447876,
          -0.3535533547401428,
          -0.5,
          2.0863602401277603e-8,
          0.3535533547401428
         ],
         "y": [
          0.3535533845424652,
          0.3535533845424652,
          -4.371138828673793e-8,
          -0.5,
          -0.35355344414711
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3535534143447876,
          "xref": "x",
          "y": 0.3535533845424652,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.3535533547401428,
          "xref": "x",
          "y": 0.3535533845424652,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3535533547401428,
          "xref": "x",
          "y": -0.35355344414711,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.3535533547401428,
          "axref": "x",
          "ay": 0.3535533845424652,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 0,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.3535533547401428,
          "axref": "x",
          "ay": 0.3535533845424652,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.5,
          "xref": "x",
          "y": -4.371138828673793e-8,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.3535534143447876,
          "axref": "x",
          "ay": 0.3535533845424652,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -6.954532949521308e-9,
          "xref": "x",
          "y": 0.5,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.5,
          "axref": "x",
          "ay": -4.371138828673793e-8,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.3535534143447876,
          "xref": "x",
          "y": -0.3535533547401428,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.3535534143447876,
          "axref": "x",
          "ay": -0.3535533547401428,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 2.0863602401277603e-8,
          "xref": "x",
          "y": -0.5,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 0,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3535534143447876,
          "xref": "x",
          "y": 0.3535533845424652,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -6.954532949521308e-9,
          "xref": "x",
          "y": 0.5,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.3535533547401428,
          "xref": "x",
          "y": 0.3535533845424652,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.5,
          "xref": "x",
          "y": -4.371138828673793e-8,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.3535534143447876,
          "xref": "x",
          "y": -0.3535533547401428,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": [
       "<div>\n",
       "        \n",
       "        \n",
       "            <div id=\"d9bad4d3-2c03-410d-b9c5-8a73a98b7824\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n",
       "            <script type=\"text/javascript\">\n",
       "                require([\"plotly\"], function(Plotly) {\n",
       "                    window.PLOTLYENV=window.PLOTLYENV || {};\n",
       "                    \n",
       "                if (document.getElementById(\"d9bad4d3-2c03-410d-b9c5-8a73a98b7824\")) {\n",
       "                    Plotly.newPlot(\n",
       "                        'd9bad4d3-2c03-410d-b9c5-8a73a98b7824',\n",
       "                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"Website\", \"AzureStorage\", \"AzureResourceManager\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, 0.5, -6.954532949521308e-09, -0.3535534143447876], \"y\": [0.0, 0.0, 0.5, -0.3535533547401428]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\", \"Website[user=monitor]\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.3535534143447876, -0.3535533547401428, -0.5, 2.0863602401277603e-08, 0.3535533547401428], \"y\": [0.3535533845424652, 0.3535533845424652, -4.371138828673793e-08, -0.5, -0.35355344414711]}],\n",
       "                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535534143447876, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535533547401428, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535533547401428, \"xref\": \"x\", \"y\": -0.35355344414711, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3535533547401428, \"axref\": \"x\", \"ay\": 0.3535533845424652, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 0.0, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3535533547401428, \"axref\": \"x\", \"ay\": 0.3535533845424652, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.3535534143447876, \"axref\": \"x\", \"ay\": 0.3535533845424652, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -6.954532949521308e-09, \"xref\": \"x\", \"y\": 0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535534143447876, \"xref\": \"x\", \"y\": -0.3535533547401428, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3535534143447876, \"axref\": \"x\", \"ay\": -0.3535533547401428, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 2.0863602401277603e-08, \"xref\": \"x\", \"y\": -0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 0.0, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535534143447876, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -6.954532949521308e-09, \"xref\": \"x\", \"y\": 0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535533547401428, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535534143447876, \"xref\": \"x\", \"y\": -0.3535533547401428, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n",
       "                        {\"responsive\": true}\n",
       "                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('d9bad4d3-2c03-410d-b9c5-8a73a98b7824');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })\n",
       "                };\n",
       "                });\n",
       "            </script>\n",
       "        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 12\n",
    "should_fail = c2.connect_and_infect('Website', 'Website[user=monitor]', 'sudo', 'monitorBashCreds')\n",
    "dbg.plot_discovered_network()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO: BLOCKED TRAFFIC: target node 'Website[user=monitor]' is blocking outgoing traffic on port 'SSH'\n"
     ]
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client",
          "Website",
          "AzureStorage",
          "AzureResourceManager"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0,
          0.5,
          -6.954532949521308e-9,
          -0.3535534143447876
         ],
         "y": [
          0,
          0,
          0.5,
          -0.3535533547401428
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "GitHubProject",
          "Website.Directory",
          "Sharepoint",
          "AzureVM",
          "Website[user=monitor]"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0.3535534143447876,
          -0.3535533547401428,
          -0.5,
          2.0863602401277603e-8,
          0.3535533547401428
         ],
         "y": [
          0.3535533845424652,
          0.3535533845424652,
          -4.371138828673793e-8,
          -0.5,
          -0.35355344414711
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3535534143447876,
          "xref": "x",
          "y": 0.3535533845424652,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.3535533547401428,
          "xref": "x",
          "y": 0.3535533845424652,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3535533547401428,
          "xref": "x",
          "y": -0.35355344414711,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.3535533547401428,
          "axref": "x",
          "ay": 0.3535533845424652,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 0,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.3535533547401428,
          "axref": "x",
          "ay": 0.3535533845424652,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.5,
          "xref": "x",
          "y": -4.371138828673793e-8,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.3535534143447876,
          "axref": "x",
          "ay": 0.3535533845424652,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -6.954532949521308e-9,
          "xref": "x",
          "y": 0.5,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.5,
          "axref": "x",
          "ay": -4.371138828673793e-8,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.3535534143447876,
          "xref": "x",
          "y": -0.3535533547401428,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.3535534143447876,
          "axref": "x",
          "ay": -0.3535533547401428,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 2.0863602401277603e-8,
          "xref": "x",
          "y": -0.5,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 0,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3535534143447876,
          "xref": "x",
          "y": 0.3535533845424652,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -6.954532949521308e-9,
          "xref": "x",
          "y": 0.5,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.3535533547401428,
          "xref": "x",
          "y": 0.3535533845424652,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.5,
          "xref": "x",
          "y": -4.371138828673793e-8,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.3535534143447876,
          "xref": "x",
          "y": -0.3535533547401428,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": [
       "<div>\n",
       "        \n",
       "        \n",
       "            <div id=\"aa889348-c730-4252-815c-d2eb1d7c5159\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n",
       "            <script type=\"text/javascript\">\n",
       "                require([\"plotly\"], function(Plotly) {\n",
       "                    window.PLOTLYENV=window.PLOTLYENV || {};\n",
       "                    \n",
       "                if (document.getElementById(\"aa889348-c730-4252-815c-d2eb1d7c5159\")) {\n",
       "                    Plotly.newPlot(\n",
       "                        'aa889348-c730-4252-815c-d2eb1d7c5159',\n",
       "                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"Website\", \"AzureStorage\", \"AzureResourceManager\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, 0.5, -6.954532949521308e-09, -0.3535534143447876], \"y\": [0.0, 0.0, 0.5, -0.3535533547401428]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\", \"Website[user=monitor]\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.3535534143447876, -0.3535533547401428, -0.5, 2.0863602401277603e-08, 0.3535533547401428], \"y\": [0.3535533845424652, 0.3535533845424652, -4.371138828673793e-08, -0.5, -0.35355344414711]}],\n",
       "                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535534143447876, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535533547401428, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535533547401428, \"xref\": \"x\", \"y\": -0.35355344414711, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3535533547401428, \"axref\": \"x\", \"ay\": 0.3535533845424652, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 0.0, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3535533547401428, \"axref\": \"x\", \"ay\": 0.3535533845424652, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.3535534143447876, \"axref\": \"x\", \"ay\": 0.3535533845424652, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -6.954532949521308e-09, \"xref\": \"x\", \"y\": 0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535534143447876, \"xref\": \"x\", \"y\": -0.3535533547401428, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3535534143447876, \"axref\": \"x\", \"ay\": -0.3535533547401428, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 2.0863602401277603e-08, \"xref\": \"x\", \"y\": -0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 0.0, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535534143447876, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -6.954532949521308e-09, \"xref\": \"x\", \"y\": 0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535533547401428, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535534143447876, \"xref\": \"x\", \"y\": -0.3535533547401428, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n",
       "                        {\"responsive\": true}\n",
       "                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('aa889348-c730-4252-815c-d2eb1d7c5159');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })\n",
       "                };\n",
       "                });\n",
       "            </script>\n",
       "        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "False"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 13\n",
    "should_fail = c2.connect_and_infect('client', 'Website[user=monitor]', 'SSH', 'monitorBashCreds')\n",
    "dbg.plot_discovered_network()\n",
    "should_fail"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO: Infected node 'Website[user=monitor]' from 'Website' via su with credential 'monitorBashCreds'\n",
      "INFO: Owned message: FLAG User escalation by stealing credentials from bash history\n"
     ]
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client",
          "Website",
          "AzureStorage",
          "AzureResourceManager",
          "Website[user=monitor]"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0,
          0.5,
          -6.954532949521308e-9,
          -0.3535534143447876,
          0.3535533547401428
         ],
         "y": [
          0,
          0,
          0.5,
          -0.3535533547401428,
          -0.35355344414711
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "GitHubProject",
          "Website.Directory",
          "Sharepoint",
          "AzureVM"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0.3535534143447876,
          -0.3535533547401428,
          -0.5,
          2.0863602401277603e-8
         ],
         "y": [
          0.3535533845424652,
          0.3535533845424652,
          -4.371138828673793e-8,
          -0.5
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3535534143447876,
          "xref": "x",
          "y": 0.3535533845424652,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.3535533547401428,
          "xref": "x",
          "y": 0.3535533845424652,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3535533547401428,
          "xref": "x",
          "y": -0.35355344414711,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.3535533547401428,
          "axref": "x",
          "ay": 0.3535533845424652,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 0,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.3535533547401428,
          "axref": "x",
          "ay": 0.3535533845424652,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.5,
          "xref": "x",
          "y": -4.371138828673793e-8,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.3535534143447876,
          "axref": "x",
          "ay": 0.3535533845424652,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -6.954532949521308e-9,
          "xref": "x",
          "y": 0.5,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.5,
          "axref": "x",
          "ay": -4.371138828673793e-8,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.3535534143447876,
          "xref": "x",
          "y": -0.3535533547401428,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.3535534143447876,
          "axref": "x",
          "ay": -0.3535533547401428,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 2.0863602401277603e-8,
          "xref": "x",
          "y": -0.5,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 0,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3535534143447876,
          "xref": "x",
          "y": 0.3535533845424652,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -6.954532949521308e-9,
          "xref": "x",
          "y": 0.5,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.3535533547401428,
          "xref": "x",
          "y": 0.3535533845424652,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.5,
          "xref": "x",
          "y": -4.371138828673793e-8,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.3535534143447876,
          "xref": "x",
          "y": -0.3535533547401428,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": [
       "<div>\n",
       "        \n",
       "        \n",
       "            <div id=\"72013daa-e3bf-473c-ba9d-4ada332513fe\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n",
       "            <script type=\"text/javascript\">\n",
       "                require([\"plotly\"], function(Plotly) {\n",
       "                    window.PLOTLYENV=window.PLOTLYENV || {};\n",
       "                    \n",
       "                if (document.getElementById(\"72013daa-e3bf-473c-ba9d-4ada332513fe\")) {\n",
       "                    Plotly.newPlot(\n",
       "                        '72013daa-e3bf-473c-ba9d-4ada332513fe',\n",
       "                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"Website\", \"AzureStorage\", \"AzureResourceManager\", \"Website[user=monitor]\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, 0.5, -6.954532949521308e-09, -0.3535534143447876, 0.3535533547401428], \"y\": [0.0, 0.0, 0.5, -0.3535533547401428, -0.35355344414711]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.3535534143447876, -0.3535533547401428, -0.5, 2.0863602401277603e-08], \"y\": [0.3535533845424652, 0.3535533845424652, -4.371138828673793e-08, -0.5]}],\n",
       "                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535534143447876, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535533547401428, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535533547401428, \"xref\": \"x\", \"y\": -0.35355344414711, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3535533547401428, \"axref\": \"x\", \"ay\": 0.3535533845424652, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 0.0, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3535533547401428, \"axref\": \"x\", \"ay\": 0.3535533845424652, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.3535534143447876, \"axref\": \"x\", \"ay\": 0.3535533845424652, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -6.954532949521308e-09, \"xref\": \"x\", \"y\": 0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535534143447876, \"xref\": \"x\", \"y\": -0.3535533547401428, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3535534143447876, \"axref\": \"x\", \"ay\": -0.3535533547401428, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 2.0863602401277603e-08, \"xref\": \"x\", \"y\": -0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 0.0, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535534143447876, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -6.954532949521308e-09, \"xref\": \"x\", \"y\": 0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535533547401428, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535534143447876, \"xref\": \"x\", \"y\": -0.3535533547401428, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n",
       "                        {\"responsive\": true}\n",
       "                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('72013daa-e3bf-473c-ba9d-4ada332513fe');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })\n",
       "                };\n",
       "                });\n",
       "            </script>\n",
       "        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 14\n",
    "flag = c2.connect_and_infect('Website', 'Website[user=monitor]', 'su', 'monitorBashCreds')\n",
    "dbg.plot_discovered_network()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO: discovered node: AzureResourceManager[user=monitor]\n",
      "INFO: discovered credential: CachedCredential(node='AzureResourceManager[user=monitor]', port='HTTPS', credential='azuread_user_credentials')\n",
      "INFO: GOT REWARD: SSH: cat ~/azurecreds.txt (running as monitor) revealed Azure user credential!\n"
     ]
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client",
          "Website",
          "AzureStorage",
          "AzureResourceManager",
          "Website[user=monitor]"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0,
          0.5,
          0.08682412654161453,
          -0.46984627842903137,
          0.08682409673929214
         ],
         "y": [
          0,
          3.311369178859991e-9,
          0.49240386486053467,
          -0.1710100769996643,
          -0.49240386486053467
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "GitHubProject",
          "Website.Directory",
          "Sharepoint",
          "AzureVM",
          "AzureResourceManager[user=monitor]"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0.3830222487449646,
          -0.25,
          -0.46984627842903137,
          -0.24999994039535522,
          0.3830221891403198
         ],
         "y": [
          0.32139378786087036,
          0.4330126941204071,
          0.1710101068019867,
          -0.4330127239227295,
          -0.3213938772678375
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 3.311369178859991e-9,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3830222487449646,
          "xref": "x",
          "y": 0.32139378786087036,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 3.311369178859991e-9,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.25,
          "xref": "x",
          "y": 0.4330126941204071,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 3.311369178859991e-9,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.08682409673929214,
          "xref": "x",
          "y": -0.49240386486053467,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.25,
          "axref": "x",
          "ay": 0.4330126941204071,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 3.311369178859991e-9,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.25,
          "axref": "x",
          "ay": 0.4330126941204071,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.46984627842903137,
          "xref": "x",
          "y": 0.1710101068019867,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.08682409673929214,
          "axref": "x",
          "ay": -0.49240386486053467,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3830221891403198,
          "xref": "x",
          "y": -0.3213938772678375,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.3830222487449646,
          "axref": "x",
          "ay": 0.32139378786087036,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.08682412654161453,
          "xref": "x",
          "y": 0.49240386486053467,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.46984627842903137,
          "axref": "x",
          "ay": 0.1710101068019867,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.46984627842903137,
          "xref": "x",
          "y": -0.1710100769996643,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.46984627842903137,
          "axref": "x",
          "ay": -0.1710100769996643,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.24999994039535522,
          "xref": "x",
          "y": -0.4330127239227295,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 3.311369178859991e-9,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3830222487449646,
          "xref": "x",
          "y": 0.32139378786087036,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.08682412654161453,
          "xref": "x",
          "y": 0.49240386486053467,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.25,
          "xref": "x",
          "y": 0.4330126941204071,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.46984627842903137,
          "xref": "x",
          "y": 0.1710101068019867,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.46984627842903137,
          "xref": "x",
          "y": -0.1710100769996643,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": [
       "<div>\n",
       "        \n",
       "        \n",
       "            <div id=\"3e5fe210-4092-454d-85e4-b7ed360d4148\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n",
       "            <script type=\"text/javascript\">\n",
       "                require([\"plotly\"], function(Plotly) {\n",
       "                    window.PLOTLYENV=window.PLOTLYENV || {};\n",
       "                    \n",
       "                if (document.getElementById(\"3e5fe210-4092-454d-85e4-b7ed360d4148\")) {\n",
       "                    Plotly.newPlot(\n",
       "                        '3e5fe210-4092-454d-85e4-b7ed360d4148',\n",
       "                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"Website\", \"AzureStorage\", \"AzureResourceManager\", \"Website[user=monitor]\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, 0.5, 0.08682412654161453, -0.46984627842903137, 0.08682409673929214], \"y\": [0.0, 3.311369178859991e-09, 0.49240386486053467, -0.1710100769996643, -0.49240386486053467]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\", \"AzureResourceManager[user=monitor]\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.3830222487449646, -0.25, -0.46984627842903137, -0.24999994039535522, 0.3830221891403198], \"y\": [0.32139378786087036, 0.4330126941204071, 0.1710101068019867, -0.4330127239227295, -0.3213938772678375]}],\n",
       "                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 3.311369178859991e-09, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3830222487449646, \"xref\": \"x\", \"y\": 0.32139378786087036, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 3.311369178859991e-09, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.25, \"xref\": \"x\", \"y\": 0.4330126941204071, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 3.311369178859991e-09, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.08682409673929214, \"xref\": \"x\", \"y\": -0.49240386486053467, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.25, \"axref\": \"x\", \"ay\": 0.4330126941204071, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 3.311369178859991e-09, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.25, \"axref\": \"x\", \"ay\": 0.4330126941204071, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.46984627842903137, \"xref\": \"x\", \"y\": 0.1710101068019867, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.08682409673929214, \"axref\": \"x\", \"ay\": -0.49240386486053467, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3830221891403198, \"xref\": \"x\", \"y\": -0.3213938772678375, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.3830222487449646, \"axref\": \"x\", \"ay\": 0.32139378786087036, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.08682412654161453, \"xref\": \"x\", \"y\": 0.49240386486053467, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.46984627842903137, \"axref\": \"x\", \"ay\": 0.1710101068019867, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.46984627842903137, \"xref\": \"x\", \"y\": -0.1710100769996643, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.46984627842903137, \"axref\": \"x\", \"ay\": -0.1710100769996643, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.24999994039535522, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 3.311369178859991e-09, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3830222487449646, \"xref\": \"x\", \"y\": 0.32139378786087036, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.08682412654161453, \"xref\": \"x\", \"y\": 0.49240386486053467, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.25, \"xref\": \"x\", \"y\": 0.4330126941204071, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.46984627842903137, \"xref\": \"x\", \"y\": 0.1710101068019867, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.46984627842903137, \"xref\": \"x\", \"y\": -0.1710100769996643, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n",
       "                        {\"responsive\": true}\n",
       "                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('3e5fe210-4092-454d-85e4-b7ed360d4148');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })\n",
       "                };\n",
       "                });\n",
       "            </script>\n",
       "        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 15\n",
    "outcome = c2.run_attack('Website[user=monitor]', 'CredScan-HomeDirectory')\n",
    "dbg.plot_discovered_network()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO: Infected node 'AzureResourceManager[user=monitor]' from 'client' via HTTPS with credential 'azuread_user_credentials'\n",
      "INFO: Owned message: More secrets stolen when logged as interactive `monitor` user in Azure with `az`\n"
     ]
    },
    {
     "data": {
      "application/vnd.plotly.v1+json": {
       "config": {
        "plotlyServerURL": "https://plot.ly"
       },
       "data": [
        {
         "line": {
          "color": "gray"
         },
         "mode": "lines",
         "name": "KNOWS",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "orange"
         },
         "mode": "lines",
         "name": "REMOTE_EXPLOIT",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "line": {
          "color": "red"
         },
         "mode": "lines",
         "name": "LATERAL_MOVE",
         "type": "scatter",
         "x": [
          0
         ],
         "y": [
          0
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#D32F2E",
          "line": {
           "color": "rgb(255,0,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "owned",
         "text": [
          "client",
          "Website",
          "AzureStorage",
          "AzureResourceManager",
          "Website[user=monitor]",
          "AzureResourceManager[user=monitor]"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0,
          0.5,
          0.08682412654161453,
          -0.46984627842903137,
          0.08682409673929214,
          0.3830221891403198
         ],
         "y": [
          0,
          3.311369178859991e-9,
          0.49240386486053467,
          -0.1710100769996643,
          -0.49240386486053467,
          -0.3213938772678375
         ]
        },
        {
         "hoverinfo": "text",
         "marker": {
          "color": "#0e9d00",
          "line": {
           "color": "rgb(0,255,0)",
           "width": 8
          },
          "size": 5,
          "symbol": "circle-dot"
         },
         "mode": "markers+text",
         "name": "discovered",
         "text": [
          "GitHubProject",
          "Website.Directory",
          "Sharepoint",
          "AzureVM"
         ],
         "textposition": "bottom center",
         "type": "scatter",
         "x": [
          0.3830222487449646,
          -0.25,
          -0.46984627842903137,
          -0.24999994039535522
         ],
         "y": [
          0.32139378786087036,
          0.4330126941204071,
          0.1710101068019867,
          -0.4330127239227295
         ]
        }
       ],
       "layout": {
        "annotations": [
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 3.311369178859991e-9,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3830222487449646,
          "xref": "x",
          "y": 0.32139378786087036,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 3.311369178859991e-9,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.25,
          "xref": "x",
          "y": 0.4330126941204071,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.5,
          "axref": "x",
          "ay": 3.311369178859991e-9,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.08682409673929214,
          "xref": "x",
          "y": -0.49240386486053467,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.25,
          "axref": "x",
          "ay": 0.4330126941204071,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 3.311369178859991e-9,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.25,
          "axref": "x",
          "ay": 0.4330126941204071,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.46984627842903137,
          "xref": "x",
          "y": 0.1710101068019867,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.08682409673929214,
          "axref": "x",
          "ay": -0.49240386486053467,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3830221891403198,
          "xref": "x",
          "y": -0.3213938772678375,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0.3830222487449646,
          "axref": "x",
          "ay": 0.32139378786087036,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.08682412654161453,
          "xref": "x",
          "y": 0.49240386486053467,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.46984627842903137,
          "axref": "x",
          "ay": 0.1710101068019867,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.46984627842903137,
          "xref": "x",
          "y": -0.1710100769996643,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "gray",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": -0.46984627842903137,
          "axref": "x",
          "ay": -0.1710100769996643,
          "ayref": "y",
          "hovertext": "KNOWS",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.24999994039535522,
          "xref": "x",
          "y": -0.4330127239227295,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.5,
          "xref": "x",
          "y": 3.311369178859991e-9,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3830222487449646,
          "xref": "x",
          "y": 0.32139378786087036,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.08682412654161453,
          "xref": "x",
          "y": 0.49240386486053467,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.25,
          "xref": "x",
          "y": 0.4330126941204071,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "orange",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "REMOTE_EXPLOIT",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.46984627842903137,
          "xref": "x",
          "y": 0.1710101068019867,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": -0.46984627842903137,
          "xref": "x",
          "y": -0.1710100769996643,
          "yref": "y"
         },
         {
          "align": "center",
          "arrowcolor": "red",
          "arrowhead": 1,
          "arrowsize": 1,
          "arrowwidth": 1,
          "ax": 0,
          "axref": "x",
          "ay": 0,
          "ayref": "y",
          "hovertext": "LATERAL_MOVE",
          "opacity": 1,
          "showarrow": true,
          "standoff": 10,
          "startstandoff": 10,
          "x": 0.3830221891403198,
          "xref": "x",
          "y": -0.3213938772678375,
          "yref": "y"
         }
        ],
        "autosize": false,
        "font": {
         "size": 10
        },
        "height": 400,
        "hovermode": "closest",
        "margin": {
         "b": 15,
         "l": 2,
         "r": 2,
         "t": 35
        },
        "showlegend": true,
        "template": {
         "data": {
          "bar": [
           {
            "error_x": {
             "color": "#2a3f5f"
            },
            "error_y": {
             "color": "#2a3f5f"
            },
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "bar"
           }
          ],
          "barpolar": [
           {
            "marker": {
             "line": {
              "color": "#E5ECF6",
              "width": 0.5
             }
            },
            "type": "barpolar"
           }
          ],
          "carpet": [
           {
            "aaxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "baxis": {
             "endlinecolor": "#2a3f5f",
             "gridcolor": "white",
             "linecolor": "white",
             "minorgridcolor": "white",
             "startlinecolor": "#2a3f5f"
            },
            "type": "carpet"
           }
          ],
          "choropleth": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "choropleth"
           }
          ],
          "contour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "contour"
           }
          ],
          "contourcarpet": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "contourcarpet"
           }
          ],
          "heatmap": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmap"
           }
          ],
          "heatmapgl": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "heatmapgl"
           }
          ],
          "histogram": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "histogram"
           }
          ],
          "histogram2d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2d"
           }
          ],
          "histogram2dcontour": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "histogram2dcontour"
           }
          ],
          "mesh3d": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "type": "mesh3d"
           }
          ],
          "parcoords": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "parcoords"
           }
          ],
          "pie": [
           {
            "automargin": true,
            "type": "pie"
           }
          ],
          "scatter": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter"
           }
          ],
          "scatter3d": [
           {
            "line": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatter3d"
           }
          ],
          "scattercarpet": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattercarpet"
           }
          ],
          "scattergeo": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergeo"
           }
          ],
          "scattergl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattergl"
           }
          ],
          "scattermapbox": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scattermapbox"
           }
          ],
          "scatterpolar": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolar"
           }
          ],
          "scatterpolargl": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterpolargl"
           }
          ],
          "scatterternary": [
           {
            "marker": {
             "colorbar": {
              "outlinewidth": 0,
              "ticks": ""
             }
            },
            "type": "scatterternary"
           }
          ],
          "surface": [
           {
            "colorbar": {
             "outlinewidth": 0,
             "ticks": ""
            },
            "colorscale": [
             [
              0,
              "#0d0887"
             ],
             [
              0.1111111111111111,
              "#46039f"
             ],
             [
              0.2222222222222222,
              "#7201a8"
             ],
             [
              0.3333333333333333,
              "#9c179e"
             ],
             [
              0.4444444444444444,
              "#bd3786"
             ],
             [
              0.5555555555555556,
              "#d8576b"
             ],
             [
              0.6666666666666666,
              "#ed7953"
             ],
             [
              0.7777777777777778,
              "#fb9f3a"
             ],
             [
              0.8888888888888888,
              "#fdca26"
             ],
             [
              1,
              "#f0f921"
             ]
            ],
            "type": "surface"
           }
          ],
          "table": [
           {
            "cells": {
             "fill": {
              "color": "#EBF0F8"
             },
             "line": {
              "color": "white"
             }
            },
            "header": {
             "fill": {
              "color": "#C8D4E3"
             },
             "line": {
              "color": "white"
             }
            },
            "type": "table"
           }
          ]
         },
         "layout": {
          "annotationdefaults": {
           "arrowcolor": "#2a3f5f",
           "arrowhead": 0,
           "arrowwidth": 1
          },
          "coloraxis": {
           "colorbar": {
            "outlinewidth": 0,
            "ticks": ""
           }
          },
          "colorscale": {
           "diverging": [
            [
             0,
             "#8e0152"
            ],
            [
             0.1,
             "#c51b7d"
            ],
            [
             0.2,
             "#de77ae"
            ],
            [
             0.3,
             "#f1b6da"
            ],
            [
             0.4,
             "#fde0ef"
            ],
            [
             0.5,
             "#f7f7f7"
            ],
            [
             0.6,
             "#e6f5d0"
            ],
            [
             0.7,
             "#b8e186"
            ],
            [
             0.8,
             "#7fbc41"
            ],
            [
             0.9,
             "#4d9221"
            ],
            [
             1,
             "#276419"
            ]
           ],
           "sequential": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ],
           "sequentialminus": [
            [
             0,
             "#0d0887"
            ],
            [
             0.1111111111111111,
             "#46039f"
            ],
            [
             0.2222222222222222,
             "#7201a8"
            ],
            [
             0.3333333333333333,
             "#9c179e"
            ],
            [
             0.4444444444444444,
             "#bd3786"
            ],
            [
             0.5555555555555556,
             "#d8576b"
            ],
            [
             0.6666666666666666,
             "#ed7953"
            ],
            [
             0.7777777777777778,
             "#fb9f3a"
            ],
            [
             0.8888888888888888,
             "#fdca26"
            ],
            [
             1,
             "#f0f921"
            ]
           ]
          },
          "colorway": [
           "#636efa",
           "#EF553B",
           "#00cc96",
           "#ab63fa",
           "#FFA15A",
           "#19d3f3",
           "#FF6692",
           "#B6E880",
           "#FF97FF",
           "#FECB52"
          ],
          "font": {
           "color": "#2a3f5f"
          },
          "geo": {
           "bgcolor": "white",
           "lakecolor": "white",
           "landcolor": "#E5ECF6",
           "showlakes": true,
           "showland": true,
           "subunitcolor": "white"
          },
          "hoverlabel": {
           "align": "left"
          },
          "hovermode": "closest",
          "mapbox": {
           "style": "light"
          },
          "paper_bgcolor": "white",
          "plot_bgcolor": "#E5ECF6",
          "polar": {
           "angularaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "radialaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "scene": {
           "xaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "yaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           },
           "zaxis": {
            "backgroundcolor": "#E5ECF6",
            "gridcolor": "white",
            "gridwidth": 2,
            "linecolor": "white",
            "showbackground": true,
            "ticks": "",
            "zerolinecolor": "white"
           }
          },
          "shapedefaults": {
           "line": {
            "color": "#2a3f5f"
           }
          },
          "ternary": {
           "aaxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "baxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           },
           "bgcolor": "#E5ECF6",
           "caxis": {
            "gridcolor": "white",
            "linecolor": "white",
            "ticks": ""
           }
          },
          "title": {
           "x": 0.05
          },
          "xaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          },
          "yaxis": {
           "automargin": true,
           "gridcolor": "white",
           "linecolor": "white",
           "ticks": "",
           "title": {
            "standoff": 15
           },
           "zerolinecolor": "white",
           "zerolinewidth": 2
          }
         }
        },
        "title": {
         "text": "CyberBattle simulation"
        },
        "width": 800
       }
      },
      "text/html": [
       "<div>\n",
       "        \n",
       "        \n",
       "            <div id=\"c3f1fc0b-c1ac-471d-8e71-f82ef5b1e792\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div>\n",
       "            <script type=\"text/javascript\">\n",
       "                require([\"plotly\"], function(Plotly) {\n",
       "                    window.PLOTLYENV=window.PLOTLYENV || {};\n",
       "                    \n",
       "                if (document.getElementById(\"c3f1fc0b-c1ac-471d-8e71-f82ef5b1e792\")) {\n",
       "                    Plotly.newPlot(\n",
       "                        'c3f1fc0b-c1ac-471d-8e71-f82ef5b1e792',\n",
       "                        [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"Website\", \"AzureStorage\", \"AzureResourceManager\", \"Website[user=monitor]\", \"AzureResourceManager[user=monitor]\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, 0.5, 0.08682412654161453, -0.46984627842903137, 0.08682409673929214, 0.3830221891403198], \"y\": [0.0, 3.311369178859991e-09, 0.49240386486053467, -0.1710100769996643, -0.49240386486053467, -0.3213938772678375]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.3830222487449646, -0.25, -0.46984627842903137, -0.24999994039535522], \"y\": [0.32139378786087036, 0.4330126941204071, 0.1710101068019867, -0.4330127239227295]}],\n",
       "                        {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 3.311369178859991e-09, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3830222487449646, \"xref\": \"x\", \"y\": 0.32139378786087036, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 3.311369178859991e-09, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.25, \"xref\": \"x\", \"y\": 0.4330126941204071, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 3.311369178859991e-09, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.08682409673929214, \"xref\": \"x\", \"y\": -0.49240386486053467, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.25, \"axref\": \"x\", \"ay\": 0.4330126941204071, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 3.311369178859991e-09, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.25, \"axref\": \"x\", \"ay\": 0.4330126941204071, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.46984627842903137, \"xref\": \"x\", \"y\": 0.1710101068019867, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.08682409673929214, \"axref\": \"x\", \"ay\": -0.49240386486053467, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3830221891403198, \"xref\": \"x\", \"y\": -0.3213938772678375, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.3830222487449646, \"axref\": \"x\", \"ay\": 0.32139378786087036, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.08682412654161453, \"xref\": \"x\", \"y\": 0.49240386486053467, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.46984627842903137, \"axref\": \"x\", \"ay\": 0.1710101068019867, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.46984627842903137, \"xref\": \"x\", \"y\": -0.1710100769996643, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.46984627842903137, \"axref\": \"x\", \"ay\": -0.1710100769996643, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.24999994039535522, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 3.311369178859991e-09, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3830222487449646, \"xref\": \"x\", \"y\": 0.32139378786087036, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.08682412654161453, \"xref\": \"x\", \"y\": 0.49240386486053467, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.25, \"xref\": \"x\", \"y\": 0.4330126941204071, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.46984627842903137, \"xref\": \"x\", \"y\": 0.1710101068019867, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.46984627842903137, \"xref\": \"x\", \"y\": -0.1710100769996643, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3830221891403198, \"xref\": \"x\", \"y\": -0.3213938772678375, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800},\n",
       "                        {\"responsive\": true}\n",
       "                    ).then(function(){\n",
       "                            \n",
       "var gd = document.getElementById('c3f1fc0b-c1ac-471d-8e71-f82ef5b1e792');\n",
       "var x = new MutationObserver(function (mutations, observer) {{\n",
       "        var display = window.getComputedStyle(gd).display;\n",
       "        if (!display || display === 'none') {{\n",
       "            console.log([gd, 'removed!']);\n",
       "            Plotly.purge(gd);\n",
       "            observer.disconnect();\n",
       "        }}\n",
       "}});\n",
       "\n",
       "// Listen for the removal of the full notebook cells\n",
       "var notebookContainer = gd.closest('#notebook-container');\n",
       "if (notebookContainer) {{\n",
       "    x.observe(notebookContainer, {childList: true});\n",
       "}}\n",
       "\n",
       "// Listen for the clearing of the current output cell\n",
       "var outputEl = gd.closest('.output');\n",
       "if (outputEl) {{\n",
       "    x.observe(outputEl, {childList: true});\n",
       "}}\n",
       "\n",
       "                        })\n",
       "                };\n",
       "                });\n",
       "            </script>\n",
       "        </div>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 16\n",
    "secrets = c2.connect_and_infect('client', 'AzureResourceManager[user=monitor]', 'HTTPS', 'azuread_user_credentials')\n",
    "dbg.plot_discovered_network()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "id                                 status      local_attacks               remote_attacks\n",
      "---------------------------------  ----------  --------------------------  -------------------------------------------------------\n",
      "client                             owned       ['SearchEdgeHistory']       []\n",
      "Website                            owned       ['CredScanBashHistory']     ['ScanPageSource', 'ScanPageContent']\n",
      "AzureStorage                       owned       []                          ['AccessDataWithSASToken']\n",
      "AzureResourceManager               owned       []                          ['ListAzureResources']\n",
      "Website[user=monitor]               owned       ['CredScan-HomeDirectory']  []\n",
      "AzureResourceManager[user=monitor]  owned       []                          []\n",
      "GitHubProject                      discovered                              ['CredScanGitHistory']\n",
      "Website.Directory                  discovered                              ['NavigateWebDirectory', 'NavigateWebDirectoryFurther']\n",
      "Sharepoint                         discovered                              ['ScanSharepointParentDirectory']\n",
      "AzureVM                            discovered                              []\n"
     ]
    }
   ],
   "source": [
    "c2.print_all_attacks()"
   ]
  }
 ],
 "metadata": {
  "celltoolbar": "Raw Cell Format",
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.2-final"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}